比较sql中的两个逗号分隔值,我们可以通过使用Split类函数来完成。(我们可以做三列!) 但是,不使用这些功能是可能的吗?
让我举个例子。
查询应检查以下条件
(1)从表1中选择已计划的任务。但不是完成或拒绝列。
(2)仅返回强制性任务
使用拆分功能(UD功能)或Cursor使查询更加复杂,并且它也会吞下时间。
有没有其他解决方案可以完成这项工作? 单个查询可能吗?
提前致谢。
答案 0 :(得分:3)
没有灵丹妙药。如果你真的想提高性能,可以将其标准化(可能是索引)。此外,更多标准查询可以在没有拆分功能的情况下工作。
根据确切的情况,它可能会有所不同,但是根据你所展示的内容,我会为每个与table1相关的任务创建一个任务表,这些任务表似乎是包含许多任务的“作业”或“项目”。 / p>
只是在表中意味着它们是计划任务,包含强制,拒绝和完成的列。
如果您无法规范化此数据,那么您可能会遇到拆分功能。有些文章关于从分裂函数中获得出色的性能,CLR函数看起来运行得非常快。