我开始学习SQL。我正在使用SQL Server Management Studio来编写我的查询。我知道我可以过滤包含给定值的字段(例如:产品A,产品A(产品),产品B,产品B(成本))所以在这种情况下我可以过滤掉包含“(成本)”的值。我已经到达以下查询但它失败了。你能告诉我原因吗?
SELECT billing_code, billing_code_desc
FROM dbo.jm_billing_code
WHERE (NOT (billing_code_desc = N'CONTAIN [(cost)]'))
ORDER BY billing_code
答案 0 :(得分:4)
N'CONTAIN [(cost)]'
是字符串文字,您不能在其中放置contain
等函数。
请改为尝试:
where billing_code_desc not like '%(cost)%'
答案 1 :(得分:3)
要排除有成本的结果:
SELECT billing_code, billing_code_desc
FROM dbo.jm_billing_code
WHERE billing_code_desc NOT LIKE '%(cost)%'
ORDER BY billing_code
答案 2 :(得分:1)
WHERE NOT(CONTAINS(billing_code_desc, N'cost'))
应该解决你的问题。
答案 3 :(得分:1)
答案 4 :(得分:1)
尝试:
SELECT billing_code, billing_code_desc FROM dbo.jm_billing_Code
WHERE billing_code_desc NOT LIKE '%(Cost)%'
ORDER BY billing_code