2012-12-04 5 views
1

작동하지 않는 것처럼 선택 횟수를 삽입하려고합니다.MySQL이 select 수에 삽입합니다.

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

실제로 나는 1 개의 여분 매개 변수를 묶었 다 고맙다. .. 나는 그것이 아마 내가 그것을 보지 않았던 이유 다라고 아프다. 대답 해 주셔서 감사합니다. –