所以基本上我已经插入到数据库中解析数据库字符串
ID = 1 值=约翰,迈克尔,萨拉
ID = 2 值=迈克此列称为签名,Steve,约翰 。 。
现在在asp.net我不知道我该怎么做选择命令,并知道如果该值
约翰,迈克尔,萨拉
在它有“迈克尔”
所以基本上我已经插入到数据库中解析数据库字符串
ID = 1 值=约翰,迈克尔,萨拉
ID = 2 值=迈克此列称为签名,Steve,约翰 。 。
现在在asp.net我不知道我该怎么做选择命令,并知道如果该值
约翰,迈克尔,萨拉
在它有“迈克尔”
回答您的问题:
CHARINDEX()在较大的字符串内搜索子字符串,并返回位置本场比赛的,还是0,如果没有发现匹配
SELECT * FROM [Table] WHERE CHARINDEX(Signature, 'Michael') > 0
或者
你可以使用通配符查询(后认为,如果将或ON):
SELECT * FROM [Table] WHERE Signature LIKE '%' + 'Michael' + '%'
但真的是你应该将这些数据存储在单独的相关表中。
select *
from Signature
where value like '%Micheal%'
第不要。
为每个签名名称添加一个包含行的新表,并为每个签名者使用一行。这是关系数据库的要点。
1 John
1 Michael
1 Sara
2 Mike
2 Steve
2 John
或者更好的是,添加了两个新表 - 一个用于签署,以及一个用于之间的关系,你的初始表
Signatories
1 John
2 Michael
ItemSignatures
ItemID SignatoryID
1 1
1 2
2 1
在发布答案,请加和解释说明你改变了什么或添加或如何工作或什么的。尽管你的答案可能是解决方案,但有些阅读此文的人可能不明白其意义或工作原理。 –