Db2
DB2 中不區分大小寫的 LIKE
有沒有辦法
LIKE
在 DB2 中以不區分大小寫的方式對 varchar 列執行操作,而不更改底層列定義?或者有沒有這樣的解決方法
SELECT * FROM mytable WHERE mycolumn LIKE '%string%' OR mycolumn LIKE '%STRING%'
?
不可以。假設 Db2 for LUW,您可以選擇不區分大小寫的整理表,但只能在數據庫創建時選擇。
您必須標準化案例以進行比較,具有明顯的性能影響:
SELECT * FROM mytable WHERE LCASE(mycolumn) LIKE '%string%'
嘗試
SELECT * FROM mytable WHERE REGEXP_LIKE(mycolumn,'string',1,'i')
如果您的 Db2 版本支持正則表達式函式 https://www.ibm.com/support/knowledgecenter/en/SSEPGG_11.5.0/com.ibm.db2.luw.sql.ref.doc/doc/r0061494.html 和如果您轉義字元串中的任何正則表達式元字元