回答編集履歴
1
追記
answer
CHANGED
@@ -6,5 +6,33 @@
|
|
6
6
|
|
7
7
|
まずanyはSQLではサブクエリを指定するので数字の羅列ではなく、
|
8
8
|
あえてやるならUNIONしたSELECT文でしょうか
|
9
|
+
```SQL
|
10
|
+
(SELECT 1000 UNION SELECT 2000 UNION SELECT 3000 )
|
9
11
|
```
|
12
|
+
|
13
|
+
これに対して出金額=で検証すれば合致するデータはないのでヒットしません
|
14
|
+
- 元データ
|
15
|
+
```SQL
|
16
|
+
|
17
|
+
create table 家計簿 (日付 date,費目 varchar(20), メモ varchar(20), 入金額 int, 出金額 int);
|
18
|
+
insert into 家計簿 values
|
19
|
+
('2013-02-03','食費','コーヒーを購入',0,380),
|
20
|
+
('2013-02-10','給料','1月の給料',280000,0),
|
21
|
+
('2013-02-11','教養娯楽費','書籍を購入',0,2800),
|
22
|
+
('2013-02-14','交際費','同期会の会費',0,5000),
|
23
|
+
('2013-02-18','水道光熱費','1月の電気代',0,7560);
|
24
|
+
|
25
|
+
```
|
26
|
+
|
27
|
+
- 検索
|
28
|
+
```SQL
|
10
|
-
(SELECT 1000 UNION SELECT 2000 UNION SELECT 3000 )
|
29
|
+
SELECT * FROM 家計簿 WHERE 出金額 = ANY (SELECT 1000 UNION SELECT 2000 UNION SELECT 3000 );
|
30
|
+
```
|
31
|
+
|
32
|
+
一応文法上未満をとれるので試して見ると
|
33
|
+
```SQL
|
34
|
+
SELECT * FROM 家計簿 WHERE 出金額 < ANY (SELECT 1000 UNION SELECT 2000 UNION SELECT 3000 );
|
35
|
+
```
|
36
|
+
なら拾えるでしょう。ただ、思っているデータがヒットしているかどうかはわかりません。
|
37
|
+
合致させるだけならINで十分だし、未満を取りたいという場合どういった結果を
|
38
|
+
期待しているか具体例がないと答えられないでしょう
|