Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/81.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
SQL在具有多个项的列表中的何处条件?_Sql_Where - Fatal编程技术网

SQL在具有多个项的列表中的何处条件?

SQL在具有多个项的列表中的何处条件?,sql,where,Sql,Where,我想查询一个表,其中我需要2列满足某些条件,例如,一个如下表: LastName FirstName Age address LN1 FN1 18 ADD1 LN2 FN1 20 ADD2 select * from mytable where LastName in 'LN1' and FirstName in 'FN1' 现在我想提取第一个地址,如下所示: LastName FirstName Age address LN1

我想查询一个表,其中我需要2列满足某些条件,例如,一个如下表:

LastName FirstName Age address
LN1      FN1        18  ADD1
LN2      FN1        20  ADD2
select * from mytable
where LastName in 'LN1' and FirstName in 'FN1' 
现在我想提取第一个地址,如下所示:

LastName FirstName Age address
LN1      FN1        18  ADD1
LN2      FN1        20  ADD2
select * from mytable
where LastName in 'LN1' and FirstName in 'FN1' 
我可以使用这样的条件:

where (LastName, FirstName) in (LN1,FN1)

请帮忙。谢谢。

一些数据库支持您想要的语法:

where (LastName, FirstName) in ('LN1', 'FN1')
请注意,单引号很重要,因为它们是字符串常量

在其他数据库中,您需要执行以下操作:

where LastName = 'LN1' or FirstName = 'FN1'

或者将常量放入派生表中,并使用
联接进行匹配。

您可以使用

select * from mytable where LastName = 'LN1' or FirstName = 'FN1';
select * from mytable where LastName = 'LN1' and FirstName = 'FN1';

是的,您可以使用('LN1','FN1')中的
where(LastName,FirstName)
添加单引号帮助!我使用的是DB2,我使用的两列是“varchar”,所以单引号是必须的。以前我使用的是双引号”,这没有帮助。谢谢