这可能是显而易见的,但由于我没有任何经验,我无法弄清楚该怎么做。这是个问题;我说table2有字段id,名称,时间,价格和解释。另外,还有另一个table1,它有名称,时间和价格。如果价格高于某个阈值,我想从table1插入数据,而这样做是为了解释我想要“价格高于阈值”。任何人都可以建议我这样做吗?提前谢谢。
答案 0 :(得分:1)
试试这个......
INSERT INTO `table2` (`name`, `time`, `price`, `explanation`)
SELECT `name`, `time`, `price`, 'The price is above threshold'
FROM `table1`
WHERE `price` > 100
答案 1 :(得分:0)
NSERT [LOW_PRIORITY | HIGH_PRIORITY] [IGNORE]
[INTO] tbl_name [(col_name,...)]
SELECT ...
[ ON DUPLICATE KEY UPDATE col_name=expr, ... ]
使用INSERT ... SELECT
,您可以从一个或多个表中快速地将多行插入表中。例如:
INSERT INTO tbl_temp2(fld_id) SELECT tbl_temp1.fld_order_id FROM tbl_temp1 WHERE tbl_temp1.fld_order_id> 100;
以下条件适用于INSERT ... SELECT
语句:
http://dev.mysql.com/doc/refman/5.0/en/insert-select.html
答案 2 :(得分:0)
INSERT table1 (name, time, price)
SELECT name, time, price
FROM table2
WHERE price > 120
答案 3 :(得分:0)
使用INSERT语句并列出要插入的字段,然后是要用于填充字段的SELECT语句。这是一个链接:http://dev.mysql.com/doc/refman/5.5/en/insert.html。
示例:
INSERT INTO insert_tablename (field1, field2, field3)
SELECT field1, field2, field3
< The rest of your select statement >