目前,我正在将 VB6 转换为 VB.NET。转换后,我想在 SQL 中插入/选择,但我需要知道我的 sql 语句的含义。
我的声明:
XXX where adj.reasonid *= re.reasonid and (status <> 'A'OR action = 'H')
有人可以知道 *= 的意思吗?和
in (status <> 'A'OR action = 'H')
这是否意味着任何一个条件都可以选择数据?
目前,我正在将 VB6 转换为 VB.NET。转换后,我想在 SQL 中插入/选择,但我需要知道我的 sql 语句的含义。
我的声明:
XXX where adj.reasonid *= re.reasonid and (status <> 'A'OR action = 'H')
有人可以知道 *= 的意思吗?和
in (status <> 'A'OR action = 'H')
这是否意味着任何一个条件都可以选择数据?
*=
是左外连接的替代(我相信已过时)语法。
Outer Join
这是sql server 中的旧语法。
SQL Server 长期以来支持两种形式的OUTER JOIN syntax
、ANSI syntax (using LEFT OUTER JOIN, RIGHT OUTER JOIN
等),以及简化的T-SQL syntax (using
= 和 =).
http://www.forta.com/blog/index.cfm/2006/1/15/SQL-Server-2005-Outer-Join-Gotcha
在你的代码中。
where adj.reasonid Left Outer Join re.reasonid
and (status <> 'A' OR action = 'H')
对于在。
in (status <> 'A'OR action = 'H')
OR 运算符只计算表达式,直到找到 TRUE 结果。