3
SELECT triple_join('A multiple join on the Equipment, EquipmentTypes, and
RentalInfo works effectively: ',
CASE WHEN
(SELECT name, e.riid, rental_start, in_use FROM Equipment AS e JOIN
EquipmentTypes ON equipment_type = etid JOIN RentalInfo AS ri ON
e.riid = ri.riid)
= ('Enabler 420', 1, '20141107', 1)
THEN 'Passed' ELSE 'Failed' END
);
これは、自分のジョインが効果的に機能しているかどうかをテストするコードです。ただし、コードを実行すると、 "、"の近くに構文エラーがあると表示されます。誰かが何が起こっているか教えてもらえますか?SQLのトリプルジョインのテストケース
P.S .: Equipment、EquipmentTypes、およびRentalInfoは、私が定義したテーブルで、別のファイルに「挿入」されています。
最初の推測は、2行にまたがる文字列の解析エラーです。データベースやクエリの処理方法については言及していないので、これが可能です。 –
'triple_join'は2つのパラメータを持つ関数ですか?あなたのDBMSは複数の列を単一の '='を使って比較することをサポートしていますか?結合は実際には単一の行のみを返しますか? – dnoeth
私はこのリンクに書かれている形式に従っています:http://stackoverflow.com/questions/754527/best-way-to-test-sql-queries私は同じ行のすべてのコマンドを使ってテストケースを書こうとしました。問題ではありません。はい、結合は1行しか返しません:Enabler 420 | 1 | 20141107 | 1 –