2012-12-04 100 views
1

我想插入這樣的選擇計數是可能的,因爲它似乎不工作。MySQL插入INTO選擇計數

INSERT INTO vote (uid, pid, poid, yes, no, total) 
VALUES (:uid,:pid,:poid,0,0,(SELECT COUNT(*) FROM member WHERE pid = :pid2 AND type > 0)) 

好的,實際上,這將工作。我在其他地方犯了一個錯誤。這項工作。

+0

你什麼錯誤?你是否試圖在沒有PDO的情況下執行它,只需要在MySQL客戶端中執行? –

+0

執行此子查詢時是否得到結果? SELECT COUNT(*)FROM member WHERE pid =:pid2 AND type> 0 – Rob

+0

我很好用我錯過了一個額外的綁定參數從一個副本過去... –

回答

1

試試這個:

INSERT INTO vote (uid, pid, poid, yes, no, total) 
SELECT :uid,:pid,:poid,0,0,COUNT(*) 
FROM member WHERE pid = :pid2 AND type > 0 
+0

這應該肯定工作(所有表和字段存在與給定名稱),但我期望其他查詢也可以正常工作。 – GolezTrol

+0

謝謝你其實我已經綁定了一個額外的參數......我生病了,也許這就是爲什麼我沒有看到它。謝謝你的回答。 –