0

tblCluster、tblServer、および tblDatabase と呼ばれる 3 つのテーブル関係があります。サーバーはクラスターの下にあり、データベースはサーバーの下にあります。tblCluster の PK は ClusterName です。tblServer の Pk は ServerName で、FK は ClusterName です。tblDatabase の PK は DatabaseName で、FK は Servername です。ClusterNameの下/からのすべてのServerNameとDatabaseNameを確認したい場合は、Cluster5です。のようにクエリを書くべきですか

SELECT tblCluster.ClusterName, tblServerName.ServerName, tblDatabase.DatabaseName 
FROM tblCluster 
JOIN tblServer 
ON tblCluster.ClusterName = tblServer.ClusterName 
INNER JOIN tblDatabase 
ON tblServer.ServerName = tblDatabase.ServerName 
WHERE tblCluster.ClusterName = Cluster5;

データベースが空でもservernameが見つかった場合でも、databasenameがnullの結果テーブルを表示したい.

4

1 に答える 1

2

LEFT JOIN代わりに使用してみましたかINNER JOIN- これは通常、そのような要件の解決策です。いくつかの例を含む詳細な説明については、こちらを参照してください。

于 2012-11-18T23:38:27.457 に答える