두 행 사이를 검색하지만 두 행의 값만 일치하는 쿼리를 작성해야합니다. 내가 검색하는 데이터는 성을 보유하는 테이블이고 성은 별도의 행입니다. 내가 같은 줄에 보관해야한다고 말하지 마라. 나는 할 수 없다. 필자가해야 할 일은 레코드를 결합한 쿼리를 별도의 열에서 검색 할 수 있도록하는 것입니다. 다음쿼리에서 레코드 결합
데이터 형식은 다음
StudentValues
ID
StudentID
FieldID
Response
1 fieldID가 응답 열에 내게 이름을 제공하고 (2)의 fieldID가 응답 열에 내게 성을 제공하고 StudentID 사용한 것 기록을 그룹화합니다.
지금
SELECT StudentId, MIN(CASE WHEN FieldId = 1 THEN Response ELSE NULL END) AS fname, MIN(CASE WHEN FieldId = 2 THEN Response ELSE NULL END) AS lname
FROM sms_studentvalues
WHERE fname = 'Some Value'
AND lname = 'Some Value'
GROUP BY studentid
나는 일을 복잡 이상까지했다. 나는 그룹핑과 케이스가 얼마나 유용 할 수 있는지 기억해야했다. –
이것을 정답으로 표시하기 전에 쿼리에 where 절을 추가하는 방법은 무엇입니까? 위의 코드를 추가하십시오. –
@Dave Long - 내 답변 업데이트 – Lamak