MySQL LIKE比预期更多的结果

时间:2013-04-10 18:04:14

标签: mysql sql-like

为什么这个LIKE语句

WHERE configuration_key LIKE 'MODULE_SHIPPING_DP_%'

显示如下结果:

MODULE_SHIPPING_DPD_STATUS
MODULE_SHIPPING_DP_STATUS
MODULE_SHIPPING_DPD_TAX_CLASS
MODULE_SHIPPING_DP_TAX_CLASS

我只想用

获得结果
MODULE_SHIPPING_DP_foobar

我不明白。

2 个答案:

答案 0 :(得分:2)

因为下划线_%类似,只是您只查找一个字符(cf documentation)

您需要使用\之前转义角色,如下所示:

WHERE configuration_key LIKE 'MODULE\_SHIPPING\_DP\_%'

答案 1 :(得分:1)

_也是一个匹配一个字符的通配符。所以你需要逃避它。

WHERE configuration_key LIKE 'MODULE\_SHIPPING\_DP\_%'