我在我的模型中有以下声明:
.where("ClinicalText LIKE 'Paid by PET HEALTH' AND PVID != 44444")
我需要找到ClinicalText
包含以下内容之一的所有记录:
Paid by PET HEALTH
Paid by PET HEALTH(T)
Paid by PET HEALTH (T)
我想我的类似声明将涵盖所有选项,因为它们都包含“由PET健康支付”。
看来我错了,现在需要找到正确的语法。
这个是可能的吗?
发布于 2013-09-11 12:23:34
在MySQL中,您应该能够使用'%‘通配符。
.where("ClinicalText LIKE 'Paid by PET HEALTH%' AND PVID != 44444")
当然,这将得到任何以字符串“由PET健康支付”开头的内容(取决于您的MySQL设置,这可能是区分大小写的,也可能不是区分大小写的)。
编辑:这个答案只使用一个通配符来限制与以必要字符串开头的字符串的匹配。如果您想匹配值中的任何位置,那么也要在前面添加一个'%‘。
发布于 2013-09-11 12:23:23
LIKE
需要通配符
.where("ClinicalText LIKE '%Paid by PET HEALTH%' AND PVID != 44444")
https://stackoverflow.com/questions/18741003
复制相似问题