집 >데이터 베이스 >MySQL 튜토리얼 >MySQL 쿼리 결과 교차 방법
이 글에서는 SQLquery에서 반환된 결과 집합의 교집합을 MySQL에서 구현하는 방법을 자세히 소개합니다. 필요한 친구는
1
다음 SQL 쿼리를 MySQL에서 구현하는 방법
( SELECT S.Name
FROM STUDENT S, TRANSCRIPT T
WHERE S.StudId = T.StudId AND T.CrsCode = 'CS305')
INTERSECT
(SELECT S.Name
FROM STUDENT S, TRANSCRIPT T
WHERE S.StudId = T.StudId AND T.CrsCode = 'CS315')
저에게 알려주시기 바랍니다. 미리 감사드립니다~
설명:
Get thecross
select a.* from
(
SELECT S.Name
FROM STUDENT S, T
WHERE S.StudId = T.StudId AND T.CrsCode = 'CS305'
)를
교차 조인
(
SELECT S.Name
FROM STUDENT S, TRANSCRIPT T
WHERE S.StudId = T.StudId AND T.CrsCode = 'CS315'
) as b on a.Name = b.Name;
SELECT * FROM (
SELECT DISTINCT col1 FROM t1 WHERE...
UNION
ALL SELECT DISTINCT col1 FROM t1 WHERE... ) AS tbl
GROUP BY tbl.col1 HAVING
COUNT
(*) = 2 3
Intersection:
SELECT * FROM table1 AS a JOIN table2 AS b ON a.name =b.name
예:
Table a:
FieldA
001
002
003 Table b:
FieldA
001
002
003
004
다음 결과 집합, 즉 Table A의 교차점을 얻는 방법을 알려주세요. 및 B 행
FieldA
001
002
003
답변 :a.FieldA=b.FieldA의 내부 조인 b에서 a.FieldA를 선택합니다.
차이 집합:
NOT IN은 차이 집합을 나타냅니다.
SELECT * FROM table1 WHERE name NOT IN (테이블2에서 이름 선택)
위 내용은 MySQL 쿼리 결과 교차 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!