에서
덕분에 worrysome있는이 쿼리의 여러 부분이 있습니다 : 내부가 조인 구문을 대
이
- 쉼표 조인 구문을
- 없음을 (당신이 모두를 할 수 없어, 1 선택) 같은 이름의 두 테이블을 조인 할 때 테이블 별명. 컴파일러는 무엇을 해야할지 알 수 없습니다.
- 테이블 간의 관계를 식별 할 수 없으므로 반환하려는 데이터가 수행하려는 작업을 수행하지 못할 가능성이 높습니다.
- afspraken이 쿼리에 추가되었지만이 작업의 목적을 선택하지 않았습니다.
- 일반 영어로 필요한 것을 설명하십시오. (샘플 데이터 및 원하는 결과 표시)
.
SELECT accounts.werknemer_id, accounts.voornaam, accounts.achternaam, klanten.klant_id, klanten.voornaam, klanten.achternaam
FROM accounts, klanten <-- This line is the problem
JOIN afspraken ON afspraken.werknemer_id = afspraken.werknemer_id <--or these two are (1)
JOIN afspraken ON afspraken.klant_id = afspraken.klant_id <--(2)
는 ... 우리가 계정 을 klanten과 관련이 왜 당신이 당신과 같은 조인 구문상의와 절을 사용할 수있을 때 afspraken 조인을해야하는지 알아야 해결하기 위해
INNER JOIN afspraken
ON afspraken.werknemer_id = afspraken.werknemer_id <--or these two are (1)
AND afspraken.klant_id = afspraken.klant_id <--(2)
또한 afspraken의 별명을 지정하지 마십시오. 이는 또한 시스템이 링크 할 조인을 모르기 때문에 문제를 일으킬 수 있습니다. 그러니
...
SELECT A.werknemer_id, A.voornaam, A.achternaam, K.klant_id, K.voornaam, K.achternaam
FROM accounts A, klanten K, afspraken AF, afspraken AF2
WHERE AF.werknemer_id = AF2.werknemer_id
AND AF.klant_id = AF2.klant_id
비록 다시 계정 klaten 또는
SELECT A.werknemer_id, A.voornaam, A.achternaam, K.klant_id, K.voornaam, K.achternaam
FROM accounts A
CROSS JOIN klanten K
CROSS JOIN afspraken AF,
INNER JOIN afspraken AF2
ON AF.werknemer_id = AF2.werknemer_id
AND AF.klant_id = AF2.klant_id
관련이 있지만 가능성이 각 테이블은 어떤 관련이 있는지 이해가 안 나는대로 엉망 관계가 어떻게 귀하의 예제에서 서로 테이블에.
는 쉼표 테이블 표기법을 혼합 할 수 없습니다 및 내부 조인 구문. – xQbert
더하기이 테이블이 같은 열에 합류하는 것 같습니다. 이것이 맞습니까? 일반적으로 내부 조인의 경우 table1.id = table2를 수행합니다.table1id – Kirby
'SELECT'에서'accounts'와'klanten' 테이블 만 참조합니다. 'afspraken '테이블은 어디서 들어 왔습니까? –