需要在一个字段中存储多个选定的参数。有一组代码,比如我们简化一下,最多有1111、2222、3333、4444、5555、6666等。我知道,使用 ID 和名称创建一个单独的表,然后在这些表之间创建一个链接的另一个表更正确......一般来说,我不想在全球范围内打扰,因为。不会有很多参数...但是有这些参数可以有相当多的记录,也就是下面的记录是可能的:
3333
1111,3333
2222,3333
2222
2222
1111
但是你需要考虑到你可以做出选择,比如
SELECT... WHERE LIKE '%3333%'
告诉我如何将其存储在 mssql 中并选择 WHERE
我知道 MYsql 有 LIKE,我想知道它对 MSSQL 的正确性以及所有这些快速工作,我需要建立一个索引吗?
它不会快速工作,也没有办法
LIKE '%что-что%'
让它快速工作。SQL Server 中的索引允许做两件事:
对于 LIKE,这意味着索引上的快速搜索 (INDEX SEEK) 仅适用于形式为 的表达式
LIKE 'начало%
。对于他们,您可以定义范围 (начало
) 中的第一个元素和最后一个元素(不再位于 下的元素начало%
)。LIKE '%что-что%'
将导致INDEX SCAN - 枚举索引中的所有值。如果您有可预测的值数量(例如,不超过 5 个) - 将其设为 5 列,它会运行得更快。