2012-12-04 54 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

谢谢你其实我已经绑定了一个额外的参数......我生病了,也许这就是为什么我没有看到它。谢谢你的回答。 –