我有记录item_name。每个item_name的长名称分为11个破折号( - )。我使用10选择表格来过滤搜索表单中的数据。如果列为空,我通过了选择表单。用户可以在其中选择多个选项。当用户在第9个选择表单中选择“S”和“I”时,我遇到了问题。因为它会与在其他部分用s结束的其他记录混淆。
我试图像这样查询:
select item_name from table_name where (item_name like '%S-%')
=====数据样本=====
我想也许我需要正则表达式,但我没有足够的技巧。我只是想我是否可以使用这样的通配符进行查询
select item_name from table_name where item_name like "*-*-*-*-*-*-*-*-(S-)*"
正确的结果应该是第2,3和5行。 有人可以帮我实现这一点。谢谢你。
答案 0 :(得分:1)
如果您想改善上面的通配符查询,
"*-*-*-*-*-*-*-*-(S-)*"
也许你可以尝试写这个:
'.*\-.*\-.*\-.*\-.*\-.*\-.*\-.*\-.*\-S\-.*'
答案 1 :(得分:0)
试试这个, 从table_name中选择item_name(item_name喜欢'% - S - %')