1

我想用 MySQL 做一个条件插入。我有 2 张桌子(Car 和 CarType)。

Car 表有一个名为 的列typeId,它指向 CarType 表中的一个条目。

如果给定的 typeId 存在于 CarType 表中,我只想在 Car 表中插入一行。

我尝试了一些谷歌搜索,并尝试了几个解决方案。这是我发现的
(但它不起作用):

INSERT INTO Car (title, licensePlate, carType 
SELECT 'Ford Transit', 'SV 32 654', '13' 
FROM DUAL 
    WHERE EXISTS (SELECT typeId FROM CarType WHERE typeId = 13)
4

1 回答 1

3

我认为你被这个例子误导了,它可以像这样简单:

INSERT INTO Car (title, licensePlate, carType) 
  SELECT 'Ford Transit', 'SV 32 654', '13' 
  FROM CarType WHERE typeId=13;
于 2010-12-05T14:03:57.700 回答