반응형
두 개의 MySQL 쿼리가 있습니다.
QUERY:
SELECT sodnik_1 FROM prihodnji_krog WHERE file_id='8778' AND sodnik_1 != ''
UNION
SELECT sodnik_2 FROM prihodnji_krog WHERE file_id='8778' AND sodnik_2 != ''
UNION
SELECT sodnik_3 FROM prihodnji_krog WHERE file_id='8778' AND sodnik_3 != ''
UNION
SELECT sodnik_4 FROM prihodnji_krog WHERE file_id='8778' AND sodnik_4 != ''
QUERY:
SELECT value FROM notification_sodniki WHERE user_id='16'
OUTPUT LOOKS LIKE THIS:
Name 1
Name 2
Name 3
Name 4
IN BOTH TABLES
그들은 나에게 1 열을 제공합니다. 교차 조인을 수행하고 두 선택 쿼리에있는 값만 반환하고 싶습니다. 그게 가능합니까?
해결 방법
어때
SELECT * FROM
(
SELECT sodnik_1 as value FROM prihodnji_krog WHERE file_id='8778' AND sodnik_1 != ''
UNION
SELECT sodnik_2 as value FROM prihodnji_krog WHERE file_id='8778' AND sodnik_2 != ''
UNION
SELECT sodnik_3 as value FROM prihodnji_krog WHERE file_id='8778' AND sodnik_3 != ''
UNION
SELECT sodnik_4 as value FROM prihodnji_krog WHERE file_id='8778' AND sodnik_4 != ''
) x INNER JOIN
(
SELECT value FROM notification_sodniki WHERE user_id='16'
) y
ON x.value = y.value
FROM
절에서 하위 쿼리를 사용하는 것은 임시 테이블을 만드는 것과 같습니다.
그런 다음 별칭을 사용하여 참조하고 INNER JOIN
을 수행 할 수 있습니다.
참조 페이지 https://stackoverflow.com/questions/13400726
반응형
'MySql' 카테고리의 다른 글
MySQL 카운트 빈도 (0) | 2021.01.21 |
---|---|
MySQL 항목이 널이 아닌 열 이름을 선택하십시오. (0) | 2021.01.20 |
MySQL DATEPART ()로 행 선택 (0) | 2021.01.20 |
MySQL 데이터베이스에 대한 마지막 변경 날짜 / 시간 가져 오기 (0) | 2021.01.20 |
MySQL Visual Studios C # 용 PHPMyAdmin (0) | 2021.01.20 |
댓글