如何按数据列表选择数据行

时间:2016-03-23 06:37:48

标签: sql postgresql

我的桌子有3列。我想按数据列表选择数据。

Table 1

key1    key2     value
 12       A        100
 15       A        150
 17       C         56
 13       D        600
 12       C        100
 10       B         80

我将此列表作为选择的关键:

key1   key2
12      A
17      C
13      D

,结果应为:

100
 56
600

4 个答案:

答案 0 :(得分:1)

我不清楚你的意思是什么"数据列表",但如果这些是两个表,你可以这样做:

select value
from table1
where (key1, key2) in (select key1, key2
                       from table2);

您也可以直接提供这些值:

select value
from table1
where (key1, key2) in ( (12,'A'), (17,'C'), (13,'D') );

答案 1 :(得分:0)

你可以做这样的事情

select value from table1 where CONCAT(key1,key2) in (Select CONCAT(key1,key2)  from table2)

答案 2 :(得分:0)

SQL中的“数据列表”没有意义。但是,如果要显示上面提到的结果。使用此代码 -

从表1中选择值((1,'A'),(17,'C'),(13,'D'))中的(key1,key2);

答案 3 :(得分:-1)

select 
    value 
from 
    Table1
where
    key1 in (12, 17, 13)


select 
    value 
from 
    Table1
where
    key1 in (select key1 from TableKeys)