我在数据库中有一个名为contract的表,这个表有名为shop_id的列
shop_id有很多结果,可以是这样的:
132
133-134-135
3126-3127-125
126-127-128
所以我想得到shop_id = 126
的所有数据所以我正在使用Like%''
但在这种情况下,如果我搜索shop_id = 3126,它将获得信息 因为任何东西都有126像3126或4126这样。
那么如何从此专栏中搜索确切的商店ID 所以,如果我搜索了126,我想获得列中包含精确126的记录。
答案 0 :(得分:3)
你的问题不是很清楚,但我认为你的意思是shop_id包含多个id
如果我是对的,您需要以下查询:
select *
from contacts
where shop_id like '126-%'
or shop_id like '%-126'
or shop_id like '%-126-%'
or shop_id = '126'
请记住,这不是一个好的数据库设计。
答案 1 :(得分:2)
Select *
From YourTable
Where charindex('-126-','-'+shop_id+'-')>0