首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >参数和值之间的SQL差异

参数和值之间的SQL差异
EN

Stack Overflow用户
提问于 2011-02-15 22:53:53
回答 1查看 247关注 0票数 0

抱歉,如果我的标题有点误导,但不完全确定如何表达它。

为什么以下两个语句之间会有差异:

代码语言:javascript
复制
SELECT * 
FROM tbl1 LEFT OUTER JOIN 
      tbl2 ON tbl1.num = tbl2.tbl1Num LEFT OUTER JOIN
      tbl3 ON tbl2.num = tbl3.tbl2Num
WHERE tbl2.intNum = 123 OR 123 = -1

代码语言:javascript
复制
DECLARE @intNum int = 123
SELECT * 
FROM tbl1 LEFT OUTER JOIN 
      tbl2 ON tbl1.num = tbl2.tbl1Num LEFT OUTER JOIN
      tbl3 ON tbl2.num = tbl3.tbl2Num
WHERE tbl2.intNum = @intNum OR @intNum = -1

我们运行上述两个查询,它实际上给了我们不同的结果?我们最终将其改为一个联盟来解决这个问题,但我真的很想知道为什么会发生这种情况。

提前感谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-02-15 22:55:30

您缺少参数类型:

代码语言:javascript
复制
declare @intNum int = 123
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5005151

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档