我有点问题。
我从表中选择。我希望看到仅在我的工作流程的一个点上使用的值。在此之前没有任何价值。
但是,如果没有结果,那么我的结果"是NULL
。这对我不利。
我的意思是,如果我写
SELECT myValue FROM myTable WHERE asd = 'thisIs'
当表格中myValue
为NULL
时,我的结果为NULL
。没关系。
如果没有找到结果,那么我的结果也是NULL
。那不行。
如果没有结果我做了不同的功能。 我该如何分开这些?
|MyValue|
---|-------|
1 |NULL |
---|-------|
|MyValue|
---|-------|
|MyValue|
---|-------|
1 |Hello |
---|-------|
在第一种和第三种情况下,我必须调用Update函数,在第二种情况下,我必须调用Insert函数。
但是我的SP在第一和第二种情况下发回的结果也是NULL。
提前感谢您的帮助。
答案 0 :(得分:1)
据我所知你想做这样的事情:
IF EXISTS (
SELECT myValue FROM myTable WHERE asd = 'thisIs'
)
BEGIN
SELECT myValue FROM myTable WHERE asd = 'thisIs'
END
ELSE
BEGIN
EXEC SomeOtherCode
END
答案 1 :(得分:0)
您可以计算选择记录查询后找到的行数。如果count大于或等于1,则必须运行更新查询,否则插入查询,因为所选记录为空。