不确定如何使用两个表编写 INSERT INTO 并合并 IF NOT EXISTS

Unsure how to write an INSERT INTO using two tables and incorporate an IF NOT EXISTS

我正在使用 SQLITE,并且我有两个 tables 团队和赛程。

我想使用 Teams table 中的 ID 作为 Team_Name 添加新装置,但如果 Team_Name 在 Teams 中不存在,我想将其添加到 Teams在执行 INSERT INTO Fixture 之前。

到目前为止我有这个...

INSERT INTO Fixture 
VALUES (
Select ID from Teams where Team_Name = ‘Home Team’
);

我认为在名称存在的地方会起作用。 (我无法在远离电脑的情况下进行测试,并尝试将代码写在笔记中以便稍后测试)。

我试过在多个网站上查找,我有一本基本的 SQL 适合初学者的书,但我不确定如何写额外的内容,因为我能找到的只是关于 INSERT INTO IF NOT EXISTS使用一个 table.

我希望我已经适当地写了这个问题,但是如果我是 SQL 和这些论坛的新手,任何关于更好地提出问题的建议和指导都将不胜感激。

首先使用 INSERT OR IGNORE 尝试在 Teams 中插入两个团队名称,然后在 Fixtures 中插入新行。
如果团队名称已经存在于 table 中,则不会发生任何事情。
如果 Team_Name 有一个 UNIQUE 约束,这将起作用,这是有道理的:

INSERT OR IGNORE INTO Teams(Team_Name) VALUES 
  ('A Name For Home Team'),
  ('A Name For Away Team');

INSERT INTO Fixtures (HomeTeamId, AwayTeamId) VALUES
(
  (SELECT ID FROM Teams WHERE Team_Name = 'A Name For Home Team'),
  (SELECT ID FROM Teams WHERE Team_Name = 'A Name For Away Team')
);