Skip to content

Commit 524f58b

Browse files
authored
test: enable time-related tests in sql2016 (#274)
1 parent b626555 commit 524f58b

File tree

6 files changed

+125
-148
lines changed

6 files changed

+125
-148
lines changed

src/types/value.rs

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1783,10 +1783,7 @@ impl DataValue {
17831783
Ok(DataValue::Date64(value))
17841784
}
17851785
LogicalType::Time(p) => {
1786-
let p = match p {
1787-
Some(p) => *p,
1788-
None => 0,
1789-
};
1786+
let p = p.unwrap_or(0);
17901787
let (value, nano) = Self::from_timestamp_precision(value, precision)
17911788
.map(|date_time| {
17921789
(

tests/slt/sql_2016/E153.slt

Lines changed: 12 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,19 @@
11
# E153: Updatable queries with subqueries
22

3-
# TODO: Updatable queries with subqueries
3+
statement ok
4+
CREATE TABLE TABLE_E153_01_01 ( A INT PRIMARY KEY, B INT );
45

5-
# statement ok
6-
# TABLE TABLE_E153_01_01 ( A INT, B INT );
6+
statement ok
7+
INSERT INTO TABLE_E153_01_01 VALUES ( 1, 2 );
78

8-
# statement ok
9-
# INSERT INTO TABLE_E153_01_01 VALUES ( 1, 2 );
9+
statement ok
10+
UPDATE TABLE_E153_01_01 SET A = 3, B = 4 WHERE A = ( SELECT 1 )
1011

11-
# statement ok
12-
# UPDATE TABLE_E153_01_01 SET A = 3, B = 4 WHERE A = ( SELECT 1 )
12+
statement ok
13+
CREATE TABLE TABLE_E153_02_01 ( A INT PRIMARY KEY, B INT );
1314

14-
# statement ok
15-
# CREATE TABLE TABLE_E153_02_01 ( A INT, B INT );
15+
statement ok
16+
INSERT INTO TABLE_E153_02_01 VALUES ( 1, 2 );
1617

17-
# statement ok
18-
# INSERT INTO TABLE_E153_02_01 VALUES ( 1, 2 );
19-
20-
# statement ok
21-
# DELETE FROM TABLE_E153_02_01 WHERE A = ( SELECT 1 )
18+
statement ok
19+
DELETE FROM TABLE_E153_02_01 WHERE A = ( SELECT 1 )

tests/slt/sql_2016/F051_02.slt

Lines changed: 6 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,9 @@
11
# F051-02: TIME data type (including support of TIME literal) with fractional seconds precision of at least 0
22

3-
# TODO: TIME
3+
statement ok
4+
CREATE TABLE TABLE_F051_02_01_011 ( PK INT PRIMARY KEY, A TIME )
45

5-
# statement ok
6-
# CREATE TABLE TABLE_F051_02_01_011 ( A TIME )
7-
8-
# query T
9-
# SELECT TIME '01:02:03'
10-
# ----
11-
# 01:02:03
6+
query T
7+
SELECT TIME '01:02:03'
8+
----
9+
01:02:03

tests/slt/sql_2016/F051_03.slt

Lines changed: 6 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,9 @@
11
# F051-03: TIMESTAMP data type (including support of TIMESTAMP literal) with fractional seconds precision of at least 0 and 6
22

3-
# TODO: TIMESTAMP
3+
statement ok
4+
CREATE TABLE TABLE_F051_03_01_011 ( PK INT PRIMARY KEY, A TIMESTAMP )
45

5-
# statement ok
6-
# CREATE TABLE TABLE_F051_03_01_011 ( A TIMESTAMP )
7-
8-
# query T
9-
# SELECT TIMESTAMP '2016-03-26 01:02:03'
10-
# ----
11-
# 2016-03-25T20:02:03-05:00
6+
query T
7+
SELECT TIMESTAMP '2016-03-26 01:02:03'
8+
----
9+
2016-03-26 01:02:03

tests/slt/sql_2016/F051_04.slt

Lines changed: 59 additions & 63 deletions
Original file line numberDiff line numberDiff line change
@@ -30,66 +30,62 @@ SELECT DATE '2016-03-26' >= DATE '2016-03-26'
3030
----
3131
true
3232

33-
# TODO: TIME
34-
35-
# query B
36-
# SELECT TIME '01:02:03' < TIME '01:02:03'
37-
# ----
38-
# false
39-
40-
# query B
41-
# SELECT TIME '01:02:03' <= TIME '01:02:03'
42-
# ----
43-
# true
44-
45-
# query B
46-
# SELECT TIME '01:02:03' <> TIME '01:02:03'
47-
# ----
48-
# false
49-
50-
# query B
51-
# SELECT TIME '01:02:03' = TIME '01:02:03'
52-
# ----
53-
# true
54-
55-
# query B
56-
# SELECT TIME '01:02:03' > TIME '01:02:03'
57-
# ----
58-
# false
59-
60-
# query B
61-
# SELECT TIME '01:02:03' >= TIME '01:02:03'
62-
# ----
63-
# true
64-
65-
# TODO: TIMESTAMP
66-
67-
# query B
68-
# SELECT TIMESTAMP '2016-03-26 01:02:03' < TIMESTAMP '2016-03-26 01:02:03'
69-
# ----
70-
# false
71-
72-
# query B
73-
# SELECT TIMESTAMP '2016-03-26 01:02:03' <= TIMESTAMP '2016-03-26 01:02:03'
74-
# ----
75-
# true
76-
77-
# query B
78-
# SELECT TIMESTAMP '2016-03-26 01:02:03' <> TIMESTAMP '2016-03-26 01:02:03'
79-
# ----
80-
# false
81-
82-
# query B
83-
# SELECT TIMESTAMP '2016-03-26 01:02:03' = TIMESTAMP '2016-03-26 01:02:03'
84-
# ----
85-
# true
86-
87-
# query B
88-
# SELECT TIMESTAMP '2016-03-26 01:02:03' > TIMESTAMP '2016-03-26 01:02:03'
89-
# ----
90-
# false
91-
92-
# query B
93-
# SELECT TIMESTAMP '2016-03-26 01:02:03' >= TIMESTAMP '2016-03-26 01:02:03'
94-
# ----
95-
# true
33+
query B
34+
SELECT TIME '01:02:03' < TIME '01:02:03'
35+
----
36+
false
37+
38+
query B
39+
SELECT TIME '01:02:03' <= TIME '01:02:03'
40+
----
41+
true
42+
43+
query B
44+
SELECT TIME '01:02:03' <> TIME '01:02:03'
45+
----
46+
false
47+
48+
query B
49+
SELECT TIME '01:02:03' = TIME '01:02:03'
50+
----
51+
true
52+
53+
query B
54+
SELECT TIME '01:02:03' > TIME '01:02:03'
55+
----
56+
false
57+
58+
query B
59+
SELECT TIME '01:02:03' >= TIME '01:02:03'
60+
----
61+
true
62+
63+
query B
64+
SELECT TIMESTAMP '2016-03-26 01:02:03' < TIMESTAMP '2016-03-26 01:02:03'
65+
----
66+
false
67+
68+
query B
69+
SELECT TIMESTAMP '2016-03-26 01:02:03' <= TIMESTAMP '2016-03-26 01:02:03'
70+
----
71+
true
72+
73+
query B
74+
SELECT TIMESTAMP '2016-03-26 01:02:03' <> TIMESTAMP '2016-03-26 01:02:03'
75+
----
76+
false
77+
78+
query B
79+
SELECT TIMESTAMP '2016-03-26 01:02:03' = TIMESTAMP '2016-03-26 01:02:03'
80+
----
81+
true
82+
83+
query B
84+
SELECT TIMESTAMP '2016-03-26 01:02:03' > TIMESTAMP '2016-03-26 01:02:03'
85+
----
86+
false
87+
88+
query B
89+
SELECT TIMESTAMP '2016-03-26 01:02:03' >= TIMESTAMP '2016-03-26 01:02:03'
90+
----
91+
true

tests/slt/sql_2016/F051_05.slt

Lines changed: 41 additions & 51 deletions
Original file line numberDiff line numberDiff line change
@@ -5,71 +5,61 @@ SELECT CAST ( '2016-03-26' AS DATE )
55
----
66
2016-03-26
77

8-
# TODO: TIME
9-
# query T
10-
# SELECT CAST ( '01:02:03' AS TIME )
11-
# ----
12-
# 01:02:03
8+
query T
9+
SELECT CAST ( '01:02:03' AS TIME )
10+
----
11+
01:02:03
1312

14-
# TODO: TIMESTAMP
15-
# query T
16-
# SELECT CAST ( '2016-03-26 01:02:03' AS TIMESTAMP WITHOUT TIME ZONE )
17-
# ----
18-
# 2016-03-25T20:02:03-05:00
13+
query T
14+
SELECT CAST ( '2016-03-26 01:02:03' AS TIMESTAMP WITHOUT TIME ZONE )
15+
----
16+
2016-03-26 01:02:03
1917

2018
query T
2119
SELECT CAST ( CAST ( '2016-03-26' AS DATE ) AS VARCHAR )
2220
----
2321
2016-03-26
2422

25-
# TODO: TIME
26-
# query T
27-
# SELECT CAST ( CAST ( '01:02:03' AS TIME ) AS VARCHAR )
28-
# ----
29-
# '01:02:03'
23+
query T
24+
SELECT CAST ( CAST ( '01:02:03' AS TIME ) AS VARCHAR )
25+
----
26+
01:02:03
3027

31-
# TODO: TIMESTAMP
32-
# query T
33-
# SELECT CAST ( CAST ( '2016-03-26 01:02:03' AS TIMESTAMP WITHOUT TIME ZONE ) AS VARCHAR )
34-
# ----
35-
# '2016-03-26 01:02:03'
28+
query T
29+
SELECT CAST ( CAST ( '2016-03-26 01:02:03' AS TIMESTAMP WITHOUT TIME ZONE ) AS VARCHAR )
30+
----
31+
2016-03-26 01:02:03
3632

37-
# TODO: TIME
38-
# query T
39-
# SELECT CAST ( CAST ( '01:02:03' AS TIME ) AS TIME )
40-
# ----
41-
# 01:02:03
33+
query T
34+
SELECT CAST ( CAST ( '01:02:03' AS TIME ) AS TIME )
35+
----
36+
01:02:03
4237

43-
# TODO: TIME & TIMESTAMP
38+
# pg style
4439
# query I
4540
# SELECT CAST ( CAST ( '01:02:03' AS TIME ) AS TIMESTAMP )
4641

47-
# TODO: TIME
48-
# query T
49-
# SELECT CAST ( CAST ( '01:02:03' AS TIME ) AS VARCHAR )
50-
# ----
51-
# '01:02:03'
42+
query T
43+
SELECT CAST ( CAST ( '01:02:03' AS TIME ) AS VARCHAR )
44+
----
45+
01:02:03
5246

53-
# TODO: TIMESTAMP
54-
# query T
55-
# SELECT CAST ( CAST ( '2016-03-26 01:02:03' AS TIMESTAMP WITHOUT TIME ZONE ) AS DATE )
56-
# ----
57-
# 2016-03-26
47+
query T
48+
SELECT CAST ( CAST ( '2016-03-26 01:02:03' AS TIMESTAMP WITHOUT TIME ZONE ) AS DATE )
49+
----
50+
2016-03-26
5851

59-
# TODO: TIME & TIMESTAMP
60-
# query T
61-
# SELECT CAST ( CAST ( '2016-03-26 01:02:03' AS TIMESTAMP WITHOUT TIME ZONE ) AS TIME )
62-
# ----
63-
# 01:02:03
52+
query T
53+
SELECT CAST ( CAST ( '2016-03-26 01:02:03' AS TIMESTAMP WITHOUT TIME ZONE ) AS TIME )
54+
----
55+
01:02:03
6456

65-
# TODO: TIMESTAMP
66-
# query T
67-
# SELECT CAST ( CAST ( '2016-03-26 01:02:03' AS TIMESTAMP WITHOUT TIME ZONE ) AS TIMESTAMP )
68-
# ----
69-
# 2016-03-25T20:02:03-05:00
57+
query T
58+
SELECT CAST ( CAST ( '2016-03-26 01:02:03' AS TIMESTAMP WITHOUT TIME ZONE ) AS TIMESTAMP )
59+
----
60+
2016-03-26 01:02:03
7061

71-
# TODO: TIMESTAMP
72-
# query T
73-
# SELECT CAST ( CAST ( '2016-03-26 01:02:03' AS TIMESTAMP WITHOUT TIME ZONE ) AS VARCHAR )
74-
# ----
75-
# '2016-03-26 01:02:03'
62+
query T
63+
SELECT CAST ( CAST ( '2016-03-26 01:02:03' AS TIMESTAMP WITHOUT TIME ZONE ) AS VARCHAR )
64+
----
65+
2016-03-26 01:02:03

0 commit comments

Comments
 (0)