Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2008/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 从被逗号分隔的数据库字段中选择项_Sql_Visual Studio 2008_Select - Fatal编程技术网

Sql 从被逗号分隔的数据库字段中选择项

Sql 从被逗号分隔的数据库字段中选择项,sql,visual-studio-2008,select,Sql,Visual Studio 2008,Select,我一直在努力解决的问题 我在数据库中有一个tablefield,其中存储了多个数字,并用逗号分隔 例如=TBL1-数字字段有(1,2,3,4,5,6,7,8,9,10,11,12) 如何显示TBL1中Numberfield中包含1的所有行 我现在所拥有的一切都是有效的,但当我选择1时,我也选择了11,12。。。我该如何避免这种情况 我的代码示例: WHERE (tbl1.Numberfield LIKE '%' + @Numberfield + '%') 谢谢你的帮助和时间 最好

我一直在努力解决的问题

我在数据库中有一个tablefield,其中存储了多个数字,并用逗号分隔

例如=TBL1-数字字段有(1,2,3,4,5,6,7,8,9,10,11,12)

如何显示TBL1中Numberfield中包含1的所有行

我现在所拥有的一切都是有效的,但当我选择1时,我也选择了11,12。。。我该如何避免这种情况

我的代码示例:

WHERE        (tbl1.Numberfield LIKE '%' + @Numberfield + '%')

谢谢你的帮助和时间

最好更改您的模式,但您可以在当前模式下尝试:

WHERE  (',' + tbl1.Numberfield + ',' LIKE '%,' + @Numberfield + ',%')

最好更改您的架构,但您可以在当前架构中尝试:

WHERE  (',' + tbl1.Numberfield + ',' LIKE '%,' + @Numberfield + ',%')

啊。这就是非规范化模式不好的原因。Numberfield应该是一个子表,每个数字对应一行回到父行。Ugh。这就是非规范化模式不好的原因。Numberfield应该是一个子表,每个数字对应一行回到父行。这假设在任何逗号之前或之后没有空格。这假设在任何逗号之前或之后没有空格。