0
我的任务是在与SQLite兼容的SQL Server存储过程中进行查询。将左连接转换为左连接
以下查询包含RIGHT JOIN
s,这是不兼容的SQLite:
SELECT ...
FROM Operatori
INNER JOIN Preventivi
ON Operatori.Pk = Preventivi.FkOperatori
RIGHT JOIN Operatori AS Operatori_1
INNER JOIN Soluzioni
ON Operatori_1.Pk = Soluzioni.FkOperatore
INNER JOIN Reparti
ON Operatori_1.FkReparto = Reparti.Pk
RIGHT JOIN Progetti
INNER JOIN Anagrafica
ON Progetti.FkClienti = Anagrafica.Pk
AND Soluzioni.FkProgetti = Progetti.Pk
AND Preventivi.FkSoluzioni = Soluzioni.Pk
我所知道的是,通常情况下,切换表的工作原理:
前。
FROM Operatori
RIGHT JOIN Progetti
变成了:
FROM Progetti
LEFT JOIN Reparti
但我怎么可以做转换,如果我在同一个查询有其他JOIN
S'
什么是原始数据库? 'RIGHT JOIN'通常伴随着一个条件,就像'LEFT JOIN'是...这两个应该是相等的,只是以相反的顺序。没有条件的'RIGHT JOIN'看起来像SQL的一些特定于数据库的扩展。 – jpmc26
@ jpmc26这是一个SQLServer内部的存储过程,不幸的是我无法提供更多关于它的信息,因为我是新手,并且没有创建存储过程。而那个做的不在这里了。 :( –
我已经做了一些澄清,请检查并确保我没有改变你的意图 – jpmc26