0

私は次のようなことをしようとしています:

INSERT INTO `File` (`Name`, `Owner`) 
SELECT @File, `Users`.Id
FROM `Users`
WHERE `Users`.`Name` = @UserName

ただし、Users テーブルに一致するものがない場合でも、ファイルを挿入したいのですが、値は null です。つまり、WHERE を ON に置き換えて、Users テーブルで LEFT JOIN を実行するようなものです。しかし、結合するテーブルがないため、LEFT JOIN だけを使用することはできません。2つの別々のクエリに分割せずにこれを行う方法を教えてくれる人はいますか?

これは SQLite 専用です。

4

1 に答える 1

0

たぶん、次のようなことがうまくいくでしょう:

INSERT INTO `File` (`Name`, `Owner`) 
SELECT @File, `Users`.Id
FROM (SELECT @UserName as Name) notable
left join `Users` on `Users`.`Name` = notable.Name
于 2012-02-09T18:40:44.817 に答える