在一个表中,没有设置联合主键,但该表中的数据是由两个字段唯一确定的。
在tbl_name表中有key1,key2两个字段可唯一确定一条记录,现有多个数据对,查询该表中的详细数据,<key1,key2> ={(v1,v2),(v1,v3),(v4,v2)...}
sql Server加号[+]字符串串联运算符 加号[+]运算符是sql Server处理字符串连接,可以将两个或多个字符串合并或串连成为一个字符串。 有一点需要注意的,sql Server默认
情况之下,任何字符串与NULL串联也会得取NULL值的结果,如果想把NULL也当作字符串进行串联,需要把一个名为CONCAT_NULL_YIELDS_NULL选项设置为OFF
select * from tbl_name where key1+key2 in ('v1'+'v2','v1'+'v3','v4'+'v2'...)
sqlServer中 '+' 运算符若与一方为数字则会将其变成为运算+,这样会造成字符和数字混搭时运算报错,因此要统一变成字符类型进行运算,即
select * from tbl_name where convert(varchar(10),key1)+convert(varchar(10),key2) in ('v1'+'v2','v4'+'v2'...)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。