0

我正在尝试执行以下操作:

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

但是,如果用户表中没有匹配项,我希望它仍然插入文件但具有空值。所以就像在用户表上执行左连接,用 ON 替换 WHERE。但是我不能只使用 LEFT JOIN,因为我没有表格可以加入它。谁能帮助我在不将其分成两个单独的查询的情况下如何做到这一点?

这是专门针对 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 回答