2013-03-19 54 views
0

我想從表中選擇不是like '%select%'的所有記錄,但除包含'%select some_string%''%select some_other_string%'的這些記錄外。如何在T-SQL中使用多個類似條件的select?

如何在T-SQL中執行此操作?

+0

我不知道該聲明應該是什麼樣子。你不需要編寫整個語句。我只需要一些建議。 – ironcurtain 2013-03-19 12:05:45

回答

1

從英文的直接轉換爲SQL應該很好地工作:

WHERE (NOT (s LIKE '%select%')) 
    AND NOT ((s LIKE '%select some_string%') OR (s LIKE '%select some_other_string%')) 
+0

我認爲這是我正在尋找的東西。我甚至不會認爲我可以使用德摩根定律(很久以前在學校使用它)。我還有其他問題。是否有可能使用'in'作爲字符串? 例如。 select * from table where('word1','word2')中的text_column – ironcurtain 2013-03-19 12:19:48

+0

@ user2027004雖然你可以使用'in'作爲字符串,但你需要提供確切的值,所以它不適用'like'運算符。 – dasblinkenlight 2013-03-19 12:23:24

1

我的英語技能,我得到另一種解決方案比dasblinkenlight的:

WHERE (NOT (s LIKE '%select%')) 
    OR s LIKE '%select some_string%' OR s LIKE '%select some_other_string%' 
+0

@dasblinkenlight沒有冒犯;) – fancyPants 2013-03-19 12:16:09

0

你可以試試下面的,它可以幫助

SELECT * 
FROM TABLE 
WHERE Coloumn NOT LIKE 'select' 
    AND Coloumn LIKE '%select some_string%' 
相關問題