Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit47e506f

Browse files
author
Thomas G. Lockhart
committed
Include test for CASE expression.
1 parentbedd04a commit47e506f

File tree

3 files changed

+173
-0
lines changed

3 files changed

+173
-0
lines changed

‎src/test/regress/expected/case.out

Lines changed: 94 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,94 @@
1+
QUERY: SELECT '' AS "One",
2+
CASE
3+
WHEN 1 < 2 THEN 3
4+
END AS "One only = 3";
5+
One|One only = 3
6+
---+------------
7+
| 3
8+
(1 row)
9+
10+
QUERY: SELECT '' AS "One",
11+
CASE
12+
WHEN 1 > 2 THEN 3
13+
END AS "One only = Null";
14+
One|One only = Null
15+
---+---------------
16+
|
17+
(1 row)
18+
19+
QUERY: SELECT '' AS "One",
20+
CASE
21+
WHEN 1 < 2 THEN 3
22+
ELSE 4
23+
END AS "One with default = 3";
24+
One|One with default = 3
25+
---+--------------------
26+
| 3
27+
(1 row)
28+
29+
QUERY: SELECT '' AS "One",
30+
CASE
31+
WHEN 1 > 2 THEN 3
32+
ELSE 4
33+
END AS "One with default = 4";
34+
One|One with default = 4
35+
---+--------------------
36+
| 4
37+
(1 row)
38+
39+
QUERY: SELECT '' AS "One",
40+
CASE
41+
WHEN 1 > 2 THEN 3
42+
WHEN 4 < 5 THEN 6
43+
ELSE 7
44+
END AS "Two with default = 6";
45+
One|Two with default = 6
46+
---+--------------------
47+
| 6
48+
(1 row)
49+
50+
QUERY: SELECT '' AS "Five",
51+
CASE
52+
WHEN f1 >= 0 THEN f1
53+
END AS ">= 0 or Null"
54+
FROM INT4_TBL;
55+
Five|>= 0 or Null
56+
----+------------
57+
| 0
58+
| 123456
59+
|
60+
| 2147483647
61+
|
62+
(5 rows)
63+
64+
QUERY: SELECT '' AS "Five",
65+
CASE WHEN f1 >= 0 THEN (f1 - f1)
66+
ELSE f1
67+
END AS "Simplest Math"
68+
FROM INT4_TBL;
69+
Five|Simplest Math
70+
----+-------------
71+
| 0
72+
| 0
73+
| -123456
74+
| 0
75+
| -2147483647
76+
(5 rows)
77+
78+
QUERY: SELECT '' AS "Five", f1 AS "Value",
79+
CASE WHEN (f1 < 0) THEN 'small'
80+
WHEN (f1 = 0) THEN 'zero'
81+
WHEN (f1 = 1) THEN 'one'
82+
WHEN (f1 = 2) THEN 'two'
83+
ELSE 'big'
84+
END AS "Category"
85+
FROM INT4_TBL;
86+
Five| Value|Category
87+
----+-----------+--------
88+
| 0|zero
89+
| 123456|big
90+
| -123456|small
91+
| 2147483647|big
92+
|-2147483647|small
93+
(5 rows)
94+

‎src/test/regress/sql/case.sql

Lines changed: 78 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,78 @@
1+
--
2+
-- case.sql
3+
--
4+
-- Test the case statement
5+
6+
--
7+
-- Simplest examples without involving tables
8+
--
9+
10+
SELECT''AS"One",
11+
CASE
12+
WHEN1<2 THEN3
13+
ENDAS"One only = 3";
14+
15+
SELECT''AS"One",
16+
CASE
17+
WHEN1>2 THEN3
18+
ENDAS"One only = Null";
19+
20+
SELECT''AS"One",
21+
CASE
22+
WHEN1<2 THEN3
23+
ELSE4
24+
ENDAS"One with default = 3";
25+
26+
SELECT''AS"One",
27+
CASE
28+
WHEN1>2 THEN3
29+
ELSE4
30+
ENDAS"One with default = 4";
31+
32+
SELECT''AS"One",
33+
CASE
34+
WHEN1>2 THEN3
35+
WHEN4<5 THEN6
36+
ELSE7
37+
ENDAS"Two with default = 6";
38+
39+
--
40+
-- Examples of targets involving tables
41+
--
42+
43+
SELECT''AS"Five",
44+
CASE
45+
WHEN f1>=0 THEN f1
46+
ENDAS">= 0 or Null"
47+
FROM INT4_TBL;
48+
49+
SELECT''AS"Five",
50+
CASE WHEN f1>=0 THEN (f1- f1)
51+
ELSE f1
52+
ENDAS"Simplest Math"
53+
FROM INT4_TBL;
54+
55+
SELECT''AS"Five", f1AS"Value",
56+
CASE WHEN (f1<0) THEN'small'
57+
WHEN (f1=0) THEN'zero'
58+
WHEN (f1=1) THEN'one'
59+
WHEN (f1=2) THEN'two'
60+
ELSE'big'
61+
ENDAS"Category"
62+
FROM INT4_TBL;
63+
64+
/*
65+
SELECT '' AS "Five",
66+
CASE WHEN ((f1 < 0) or (i < 0)) THEN 'small'
67+
WHEN ((f1 = 0) or (i = 0)) THEN 'zero'
68+
WHEN ((f1 = 1) or (i = 1)) THEN 'one'
69+
WHEN ((f1 = 2) or (i = 2)) THEN 'two'
70+
ELSE 'big'
71+
END AS "Category"
72+
FROM INT4_TBL;
73+
*/
74+
75+
--
76+
-- Examples of qualifications involving tables
77+
--
78+

‎src/test/regress/sql/tests

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,7 @@ select_implicit
4949
select_having
5050
subselect
5151
union
52+
case
5253
aggregates
5354
transactions
5455
random

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp