2017-06-02 121 views
0

我尝试在SQL Server 2016上运行需要从Mysql链接数据库获取数据的查询。SQL:在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执行这种查询?

+0

是交叉应用在mysql中支持的吗? – maSTAShuFu

+0

我不确定,但我想知道的是如何说SQL服务器,这个子查询需要在Mysql上运行:SELECT b.code FROM users.members b WHERE name ='name' –

+0

交叉应用不支持在mysql – maSTAShuFu

回答

1

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' 

注意,没有必要做一个CROSS APPLY在SQL Server中无论是因为里头没有相关性。