如何从存在的表中插入?

时间:2013-07-20 04:08:25

标签: php mysql

INSERT INTO tbl_harga_agen (  id_jenis, id_type, harga, type, id_agen ) 
SELECT  tbl_type_tiket.id_jenis, tbl_type_tiket.id_type, tbl_type_tiket.harga, tbl_type_tiket.type
FROM    tbl_type_tiket left join tbl_agen
WHERE   tbl_type_tiket.id_jenis = tbl_type_tiket.id_jenis
SELECT LAST_INSERT_ID() as id_agen FROM tbl_agen

这有什么不对?

1 个答案:

答案 0 :(得分:0)

缺少连接条件,并且您的where(WHERE tbl_type_tiket.id_jenis = tbl_type_tiket.id_jenis)子句不是必需的。此外,您在插入中指定了五个列,但只选择了四列。您需要解决此问题,并且您是唯一知道列名称的人,因此请将其添加到您选择查询。

INSERT INTO tbl_harga_agen (  id_jenis, id_type, harga, type, id_agen ) 
SELECT  tbl_type_tiket.id_jenis, tbl_type_tiket.id_type, tbl_type_tiket.harga, tbl_type_tiket.type
FROM    tbl_type_tiket left join tbl_agen on tbl_type_ticket.id_jenis = tbl_agen.id_jenis

同时阅读“加入语法”:http://dev.mysql.com/doc/refman/5.0/en/join.html