我在表PC和PC /名称中有两个值。但是当我写一个查询时,
select * from TransDetail TD where td.ModUserId like '%PC/%'
它给了我两个结果。有没有办法只获得一条记录?
答案 0 :(得分:4)
您应该像这样制作WHERE子句:
select *
from TransDetail TD
where TD.ModUserId ='PC'
通过这种方式,您将获得与“PC'”匹配的结果。的仅即可。
您所做的之类就是给出了PC可以是字段的开始/中间/结尾的案例结果
答案 1 :(得分:2)
您应该使用此查询来代替值PC的完全匹配:
SELECT * FROM TransDetail TD WHERE TD.ModUserId = 'PC';
在WHERE子句中使用%时,您使用的通配符代表该位置中出现0次或更多次字符。
此外,如果您实际使用LIKE '%PC/%'
,它应该与值PC /名称匹配,而不是值PC,因为语句中有额外的“/”字符。
答案 2 :(得分:0)
试试这个..
select * from TransDetail TD where td.ModUserId like '%PC'