SQL:交叉应用 MySQL table

SQL: Cross apply on MySQL table

我尝试 运行 SQL Server 2016 上的查询,需要从 Mysql 链接数据库获取数据。

SELECT o.*, name
FROM [DBS].[dbo].[Users] AS o WITH (NOLOCK) 
    CROSS APPLY (SELECT b.code FROM users.members b WHERE name = 'name') ou name
WHERE b.date > '2016-01-01'

如何使用 CROSS APPLY 执行此类查询?

MySQL 中没有可用的 CROSS APPLY 运算符。在这种情况下,您可以只使用 CROSS JOIN:

SELECT o.*, ou.code AS name
FROM [Users] AS o 
CROSS JOIN (
   SELECT b.code 
   FROM users.members b 
   WHERE name = 'name') AS ou 
WHERE b.date > '2016-01-01'

请注意,也没有必要在 SQL 服务器中执行 CROSS APPLY,因为其中没有相关性。