Join SQL查询符号"*=&引用;

Join SQL查询符号"*=&引用;,join,replace,using,Join,Replace,Using,符号“*=”在SELECT语句中代表什么?这对性能有何影响?我们可以用连接替换它吗 谢谢 STR在某些SQL实现中,可以使用具有赋值运算符(=)的SELECT语句来创建列标题与定义列值的表达式之间的关系 例如: SELECT name = 'renamed_column_name' FROM users 更多信息: 不幸的是,=运算符可能意味着赋值和相等 派遣: DECLARE @Counter INT; SET @Counter = 1; 为了平等: =是一个相等运算符,表示左侧必须等于右

符号“*=”在
SELECT
语句中代表什么?这对性能有何影响?我们可以用
连接
替换它吗

谢谢
STR

在某些SQL实现中,可以使用具有赋值运算符(
=
)的SELECT语句来创建列标题与定义列值的表达式之间的关系

例如:

SELECT name = 'renamed_column_name'
FROM users
更多信息:

不幸的是,
=
运算符可能意味着赋值和相等

派遣:

DECLARE @Counter INT;
SET @Counter = 1;
为了平等:

=
是一个相等运算符,表示左侧必须等于右侧

这可能意味着一个值必须等于子查询返回的结果,或者一个变量必须等于一个文本,无论情况如何。。。a=b意味着a和b必须具有相同的值

SELECT * FROM users LEFT JOIN posts ON users.id = posts.user_id

在一些数据库系统中

SELECT ... FROM a, b WHERE a.field1 *= b.field2
是左外部联接的旧语法:

SELECT ... FROM a LEFT JOIN b ON a.field1 = b.field2
例如,Microsoft SQL Server


因此,是的,您可以用联接替换
*=
。事实上,你应该。(我怀疑它是否会以任何相关方式影响性能,但您的查询可能会在较新版本的数据库引擎中停止工作。)

谢谢Heinzi。我还发现与此相关的其他帖子如下: