SQL在具有多个项的列表中的何处条件?
我想查询一个表,其中我需要2列满足某些条件,例如,一个如下表: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
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”,所以单引号是必须的。以前我使用的是双引号”,这没有帮助。谢谢