2014-10-02 64 views
0

是可以比較使用「喜歡」和通配符對列表的字符串,所以某事像比較字符串「喜歡」對一個列表

select column 
from table 
where column like('%foo%', '%bar%') 

的例子不以任何數據庫格式,我知道工作。我怎樣才能做到這一點,而無需使用一個詳細的解決方案就像

select column 
from table 
where column like'%foo%' or column like '%bar%' 

我感興趣的一個獨立於平臺的解決方案,但主要是Sybase ASE的。

非常感謝!

+0

你的第二個解決方案不僅是要走的路,它也是平臺獨立的。它是1992年的超過22年的ANSI-SQL標準。 – fancyPants 2014-10-02 09:52:56

+0

不是[this](http://infocenter.sybase.com/help/index.jsp?topic=/com.sybase.infocenter.dc38151.1520/html/iqrefbb/CACGCGGC.htm)你在找什麼對於? – 2014-10-02 10:02:14

回答

1

如果你使用的是MySQL/PostgreSQL,你可以使用regexp,這是一種方法。

SELECT column FROM table WHERE (column REGEXP '^ALA[0-9]') 

http://dev.mysql.com/doc/refman/5.0/en/regexp.html#operator_regexp http://www.oreillynet.com/pub/a/databases/2006/02/02/postgresq_regexes.html

二的解決辦法是,由你創造了許多喜歡,通過或加入提及。

+0

我認爲所有的數據庫都支持正則表達式,它們只是在符號上有所不同。 – Beri 2014-10-02 09:54:54