1

こんにちは。

サブクエリ選択の結果セットを別のテーブルに使用する方法の例を複数見つけました。ただし、私が持っているのは次のとおりです。

SELECT `klanten_zakelijk`.`bedrijfs_id`, `klanten`.`klant_id` 
    FROM `klanten`,`klanten_zakelijk`
    WHERE `klanten`.`emailadres` = '$email' 
    AND `klanten_zakelijk`.`bedrijfs_kvk`='$kvknr'

ご覧のとおり、2 つの異なるテーブルから結果を取得し、それらを別のテーブルに移植する必要があります。

これらの値をテーブルに挿入したいと思いますklant_bedrijf_machtiging

INSERT INTO `klant_bedrijf_machtiging` (`klant_id`, `bedrijfs_id`, `machtiging`) VALUES ('8501', '1', '3');

machtigingは挿入のある標準の 3 ですが、会社が既に存在する場合は 1 に変更できる必要がありますが、コードの別の部分でそれをインターセプトします。

私が見たすべての例は、1 つのテーブルが別のテーブルにインポートされた結果にすぎません。2 つのテーブルから結果を取得する場合、同じロジックが適用されますか? もしそうなら、これを実装するための最も賢明で最も効率的な方法は何でしょうか?

質問を短くすると、1 つのクエリで最後の列を操作しながら、対応する列にアクセスするにはどうすればよいbedrijfs_idでしょうかklant_idklant_bedrijf_machtigingmachtiging

4

4 に答える 4

-1
INSERT INTO klant_bedrijf_machtiging (`klant_id`, `bedrijfs_id`, `machtiging`)
SELECT `klanten`.`klant_id`, `klanten_zakelijk`.`bedrijfs_id`, 3
    FROM `klanten`,`klanten_zakelijk`
    WHERE `klanten`.`emailadres` = '$email' 
    AND `klanten_zakelijk`.`bedrijfs_kvk`='$kvknr'
于 2016-01-08T05:25:34.523 に答える