3개 테이블의 MySQL 선택 쿼리에 대해 문의하고 싶습니다.
비슷한 테이블이 3개 있습니다.
table_1
menu_id | 1 | 메뉴 1 2 | 메뉴 2
table_2
item_id 메뉴_이름 | 1 | 1 | 2 | 1 | 3 | 2 | 4 | 2 | 프로젝트 4
table_3
price_id | 통화_코드 | 1 | 3.65유로 | 2 | 1 | 3.45 | 3 | 2유로 | 4 | 4 | 5 | 4 | 9.60
다음 출력 SELECT를 수행해야 합니다.
item_name | 메뉴_이름 | p_USD | 1 | 항목 1 | 3.45 0 | 2 | 항목 1 | 0 | 3 | 항목 2 | 0 | 4 | 항목 2 | 0 |테이블_3의 행으로 쿼리 열(p_EUR, p_USD 등)을 채우고 싶습니다. 일치하는 레코드가 없으면 0 또는 NULL이 반환됩니다. 테이블은
table_1.menu_id=table_2.menu_id
및table_2.item_id=table_3.item_id
를 통해 결합됩니다.
를 사용할 수 있습니다. 으아아아case when
null을 0으로 변환해야 하는 경우 아래와 같이
COALESCE
를 사용할 수 있습니다.COALESCE(MAX(CASE WHEN t3.currency_code = 'LEV' THEN t3.price END), 0) AS p_LEV