2017-01-08 3 views
0

기본적으로이 설문 조사 시스템이고 나는 네의를 계산하려면 예를 들어선택하고 테이블에서 동일한 값을 가진 행의 수를 표시

| q1 | q2 | q3 | q4 | q5 | q6 | q7 | q8 | q9 | q10 | 

    | Yes | Yes | No | No | No | Yes | No | Yes | Yes | No | 

    | No | Yes | No | Yes | Yes | Yes | No | No | Yes | No | 

    | Yes | Yes | No | No | No | Yes | No | Yes | Yes | No | 

    | No | Yes | No | Yes | Yes | Yes | No | No | Yes | No | 

을 가지고 내 결과 테이블에서 아무 없다 나는 나의 결과는 Q1 = 2 없음의 2 예 및 Q2 = 4 예 0 없음의 수 등 에 그럼 난 간단한 테이블에 표시 기대되었지만 그 후 나는 아직도 쿼리에 대한 우둔 해요 원하는


,210

답변

1

그냥 부울 표현식을 사용

select ((q1 = 'Yes') + (q2 = 'Yes') + . . . + (q10 = 'Yes')) as numYes 

MySQL은 거짓 true를 1과 0으로, 숫자 맥락에서 숫자로 조건식을 처리합니다.

MySQL을 (만) true1하고 false이 때문에 사실 몇 번 조건을 수를 합산, 0이다에서
+0

@pinoy가, 그들의 대답은 PHP는 일부 단지 않습니다에, 올바른 'if ($ result = mysqli-> query ("여기에 검색어를 입력하십시오")) {print_r ($ result); }', 그것은 당신에게 가져온 결과의 구조를 줄 것이다 :) –

+0

나는 일을 제대로하지 못하고 있다고 생각한다. 나를 위해 일하지 않는다. – ranger

1

:

select 
    sum((q1 = 'Yes') + (q2 = 'Yes') + ... etc) yeses, 
    sum((q1 = 'No') + (q2 = 'No') + ... etc) nod 
from mytable 
+0

어때? – ranger

+0

@pinoy 편집 된 답변보기 – Bohemian

+0

감사합니다.하지만 선생님, 가져 오기 배열을 사용하여 예 및 아니요의 수를 어떻게 표시 할 수 있습니까? @bohemian – ranger