2010-08-18 6 views
0

아래 그림에서 스키마가있는 데이터베이스가 있고 [letaky]의 한 행 (한 ID)과 관련된 모든 항목을 선택해야합니다. 그것은 관련 zamestnanci, 모든 관련 [obsah] 및 모든 [knihy]를 의미합니다.관계가있는 데이터베이스를 선택하는 방법은 무엇입니까?

이것은 데이터베이스에서 관계를 처음 사용하는 것과 나는 그런 선택을하는 법을 모릅니다.

http://img248.imageshack.us/img248/4548/schemai.png

+0

홀수 명명 대한 상관 이유? 특별한 문제는 없지만 의미있는 이름이 있다면 관계를 이해하는 것이 더 쉬울 것입니다. 그것이 다른 언어가 아니라면. –

+0

나는 너를 위해 이미지를 만들었다 ... – Benjol

+0

네, 그건 다른 언어입니다. "Zamestnanci"= 직원, "idzamestnance"= "employee_id"등 – Josef

답변

3

사용은 가입 ... ON :

SELECT * 
FROM zamestnanci 
JOIN lekaty ON lekaty.zamestnanciid = zamestnanci.id 
JOIN obsah ON obsah.idletaku = lekaty.id 
JOIN knihy ON knihy.id = obsah.idknihy 
WHERE letaky.id = 123 

당신은 또한 LEFT이 가입 또는 오른쪽이 조인의 각각에 가입, 내부 조인 필요 여부를 고려할 수 있습니다. 이러한 차이는 예를 들어, 많은 다른 StackOverflow의 질문에 설명되어 조인이 하나

SQL Join Differences

+0

작동합니다! 감사합니다. – Josef

+0

명확하게하기 위해 데이터베이스 내에 관계를 추가해도 쿼리로 데이터를 선택하는 방법은 변경되지 않습니다. 관계를 추가하면 실수로 연결된 데이터가 삭제되는 것을 막을 수 있습니까? –

관련 문제