2013-09-27 70 views
1

您好,我想從我的pricelist表中添加一些行到products表。我試圖通過測試數據填寫我的products表。有可能使查詢在哪裏我可以添加隨機數量的行到我的products表?主要的問題是我在select語句中的行比在insert語句中多。將數據插入到表中,其中select語句有更多列

INSERT INTO products(product_name, product_price) 
SELECT name_product, price_product, IF(RAND() > 0.2,1,0) AS random 
FROM pricelist 
HAVING random = 1 

回答

4

將條件放在WHERE條款中。您計算的列random沒有意義,因爲您不要將其插入其他表格中。

INSERT INTO products(product_name, product_price) 
SELECT name_product, price_product 
FROM pricelist 
WHERE RAND() > 0.2 = 1 
0

你的意思是你在select語句中比在insert語句中有更多的列。列號必須匹配。還有更好的方法來選擇隨機行...

INSERT INTO products(product_name, product_price) 
SELECT name_product, price_product 
FROM pricelist 
ORDER BY RAND() 
LIMIT 5 
+1

我的意思是用戶'491243'寫在下面。 – Bushwacka

相關問題