什么是可选参数运行的SQL查询的最优化的方式?

什么是可选参数运行的SQL查询的最优化的方式?

问题描述:

我目前运行下面的查询到我的数据库中的数据添加到表:什么是可选参数运行的SQL查询的最优化的方式?

INSERT INTO IDEIAS_INTERACOES (CODIGO, ARQUIVO, REMETENTE, MENSAGEM, UNIT, DATA) 
VALUES (@codigo, @file, @remetente, @mensagem, @unit, @data) 

这工作得很好,但是@file说法并不总是存在,我想列是'Undefined'在那种情况。我可以使用三元运算符轻松完成此任务,但由此产生的代码很混乱,可能不是最理想的。完成此操作的更优雅的方式是什么?

诗:我使用的是mssql模块。

+0

我想查询没有改变,所以变量应该存在。所以,如果它“不存在”,它的价值是什么? – Siyual

+0

当不存在时,它是'未定义的'。 –

+1

你总是可以做'NULLIF(@file,“未定义”)' – Siyual

根据您的意见,当@file不存在,它的值是'undefined'。您可以使用NULLIF寻找那些价值,并返回一个NULL

INSERT INTO IDEIAS_INTERACOES (CODIGO, ARQUIVO, REMETENTE, MENSAGEM, UNIT, DATA) 
VALUES (@codigo, NULLIF(@file, 'Undefined'), @remetente, @mensagem, @unit, @data) 
+0

正是我在找什么,谢谢o / –