Select book_id,title
from Publisher
natural join Book natural join Category
where Publisher.name='thomas hardy' AND Category.name='computer science';
2
A
답변
2
그냥 natural join
을 피하십시오. 같은 열을 찾고 어딘가에 놓칠 수도 있습니다. 예를 들어, 내가 만드는 거의 모든 테이블에는 CreatedAt
열이 있습니다. 그리고 이로 인해 NATURAL JOIN
이 실패하게됩니다.
Select book_id,title
from Publisher join
Book
using (Publisher_Id) join
Category
using (Category_Id)
where Publisher.name = 'thomas hardy' AND Category.name = 'computer science';
는 사실, 신비가 해결 대신
는 USING
절 또는 명시 적 ON
을 포함한다. NATURAL JOIN
은 name
을 키로 사용합니다. 그리고 게시자가 카테고리 이름과 정확히 일치하는 이름을 가진 게시자는 없다고 생각합니다.
0
자연 결합을 사용하면 동일한 이름을 가진 필드에서 테이블이 조인된다는 것을 의미합니다. 게시자 표 및 카테고리 표의 입력란 중 하나는 Name
입니다. 자연 조인이이 입력란에 참여하게됩니다.
그런 다음 서로 다른 기준으로 두 필드를 필터링합니다. 두 테이블이 조인 된 후에는 두 필드에 다른 값을 사용할 수 없습니다.
는 서면과 유사 할 것입니다 :
Select foo FROM bar WHERE foo="something" and foo="Something Else"
그것은 이해되지 않는다. 자연스러운 조인은 좋지만 모든 JOIN 조건에 대해 명시 적으로 표현하는 것이 좋을지도 모릅니다. 결국 ... 코드의 주석은 일반적으로 중복되지만, 단지 주석만으로는 만들 수 없습니다.
관련 문제
- 1. MySQL에서 행을 반환하는 문제
- 2. 0 행을 반환하는 SQL 업데이트
- 3. 자연 조인 시나리오
- 4. 관련 테이블에서 자연 조인
- 5. 더 많은 행을 반환하는 조인 가져 오기
- 6. 테이블의 모든 행을 반환하는 SQL 조인
- 7. PHP와 MySQL에서 특정 행을 반환하는 방법은 무엇입니까?
- 8. - 조인 된 테이블에서 단일 행을 반환하는 방법
- 9. 클래스에서 0 행을 반환하는 mysql 데이터 읽기
- 10. 0 행을 가진 데이터 프레임을 반환하는 루프
- 11. 저장시 0 행을 반환하는 ASP 테이블
- 12. 행이 존재하더라도 0 행을 반환하는 쿼리 -
- 13. MySQL에서 유일한 행을 선택하십시오.
- 14. 조인 .. 대신 SQL 자연 조인을 사용하는 경우?
- 15. MySQL에서 세 테이블 조인
- 16. mysql에서 다중 조인
- 17. mysql에서 자체 조인 최적화
- 18. 여러 조인 행의 SELECT 0
- 19. 여러 행을 반환하는 MySQL에서 하위 쿼리를 실행 하시겠습니까?
- 20. MySQL은 왼쪽 조인 및 그룹으로 0 집계 행을 반환하지 않음
- 21. 왼쪽 수가 0 인 행을 반환하지 않는 외부 조인
- 22. 조인중인 열에 공통 값이없는 행을 반환하는 SQL 조인
- 23. 자체 조인 쿼리 : 자식 및 부모 행을 반환하는 방법?
- 24. IN 함수 내에서 주어진 순서대로 MySQL에서 행을 반환하는 방법은 무엇입니까?
- 25. 중복을 반환하는 여러 테이블 조인
- 26. 조인 테이블이 여분의 행을 반환합니다.
- 27. MySQL에서 행을 열로 표시
- 28. 내 Cassandra SELECT WHERE 문이 0 행을 반환하는 이유는 무엇입니까?
- 29. 내부 조인을 사용하여 0 행을 반환하는 MySQL 쿼리
- 30. 3 방향 조인 빈 행을
너무 나빠요? 질문 있니? –
왜 NATURAL JOIN을 사용하고 있습니까? 여기서 요구되는 것은 무엇입니까? – tadman
특정 게시자와 카테고리에 대한 모든 책 제목을 가져와 테이블에서 두 ID를 검색 한 다음 책 테이블과 결합하여 책을 찾으려면 자연 결합을 사용하지 않아야합니까? – user3600154