我的问题如下:
的汽车租赁。
租金表中的车牌。
我尝试了以下代码,但收到错误消息:
--INSERT INTO cars c (c.plate, c.car_id)
SELECT DISTINCT cr.plate, car_id_seq.nextval
FROM cars_rentals cr
;
尽管这将起作用(没有不同的车牌):
--INSERT INTO cars c (c.plate, c.car_id)
SELECT cr.plate, car_id_seq.nextval
FROM cars_rentals cr
;
(第一行带有注释,因此我可以立即看到要输出的值)
所以!有谁知道我怎么能做? A)获取上面的代码以使用DISTINCT或B)找到一种方法来获取序列的MAXVALUE作为牌照的DISTINCT COUNT(因此我可以执行两个插入语句)
提前致谢!
jack
最佳答案
错误是:
这将解决它:
SELECT cr.plate, car_id_seq.nextval
FROM (SELECT DISTINCT plate FROM cars_rentals) cr
关于SQL使用不同的数据和序列填充,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7378338/