> 데이터 베이스 > MySQL 튜토리얼 > 집계 및 조건문을 사용하여 MySQL 열 데이터를 행으로 피벗하는 방법은 무엇입니까?

집계 및 조건문을 사용하여 MySQL 열 데이터를 행으로 피벗하는 방법은 무엇입니까?

Patricia Arquette
풀어 주다: 2024-12-21 18:12:18
원래의
765명이 탐색했습니다.

How to Pivot MySQL Column Data into Rows Using Aggregation and Conditional Statements?

MySQL 피벗 테이블 열 데이터를 행으로

테이블 열 데이터를 MySQL의 행으로 효과적으로 피벗하려면 집계 함수 조합을 활용할 수 있습니다. 그리고 조건부

질의:

SELECT
  a.ID,
  a.user_ID,
  a.job_id,
  MAX(CASE WHEN c.question = 'Is it this?' THEN b.answer END) 'Is it this?',
  MAX(CASE WHEN c.question = 'Or this?' THEN b.answer END) 'Or this?',
  MAX(CASE WHEN c.question = 'Or that? ' THEN b.answer END) 'Or that? '
FROM
  Results a
INNER JOIN
  Answers b ON a.id = b.fk_result_id
INNER JOIN
  Question c ON b.fk_question_id = c.ID
GROUP BY
  a.ID,
  a.user_ID,
  a.job_id;
로그인 후 복사

설명:

  1. 결과, 답변, 질문을 결합하세요.
  2. CASE 문을 사용하여 각 질문 조건이 충족되었는지 평가하고 해당 답변을 반환합니다.
  3. MAX() 함수를 사용하여 각 질문에 대한 최대 답변을 집계합니다.

추가 팁:

  • 동적 개수의 질문이 있는 경우 사용 가능한 질문에 따라 동적 SQL 쿼리를 사용해 보세요. 질문.
  • 실제 데모를 보려면 답변에 제공된 SQLFiddle 데모 링크를 사용하세요.

위 내용은 집계 및 조건문을 사용하여 MySQL 열 데이터를 행으로 피벗하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿