我使用的工具Automate 9不允许我在我的sql查询中使用%,我想知道我是否可以匹配字符串而不使用LIKE命令中的%。
或者如果我可以通过任何其他命令匹配字符串,但唯一的事情是我不能在查询中的任何地方使用%。
比方说,我跟我有以下命令。
CASE WHEN l.something LIKE '%this.needs.tomacth%' THEN 'thisone'
但由于这些%通配符,在自动9工具中使用时会出错。
答案 0 :(得分:0)
您可以通过键入两次来自动转义百分号。所以这应该有效:
CASE WHEN l.something LIKE '%%this.needs.tomacth%%' THEN 'thisone'
答案 1 :(得分:0)
Microsoft SQL Server具有函数CHARINDEX()
CASE WHEN CHARINDEX('this.needs.tomacth', l.something) THEN 'thisone'
MySQL,Oracle和SQLite有一个函数INSTR()
MySQL INSTR(),
Oracle INSTR(),
SQLite INSTR()
CASE WHEN INSTR(l.something, 'this.needs.tomacth') THEN 'thisone'
PostgreSQL和IBM DB2有一个函数POSITION()
PostgreSQL POSITION(),
IBM DB2 POSITION()
CASE WHEN POSITION('this.needs.tomacth' IN l.something) THEN 'thisone'