2013-12-18 2 views
0

우리는이 개 두 테이블이 있습니다이 SQL 문에 JOIN이 필요합니까?

tbl_projekte [uid,werbemittel,projekt_name,kunden_id] 

tbl_kunden [uid, kunden_name] 

우리는 tbl_projekte에서 레코드를 선택하려면이 문을 사용하고 있습니다 :

SELECT * FROM tbl_projekte WHERE werbemittel ='12' ORDER BY kunden_id ASC 

우리는 어떻게 kunden_name에 의해 주문하려면 SQL 문을받을 수 있나요?

미리 도움 주셔서 감사합니다.

SELECT p.uid, p.werbemittel, p.projekt_name 
FROM tbl_projekte p 
LEFT JOIN tbl_kunden k ON k.uid = p.kunden_id 
WHERE werbemittel ='12' 
ORDER BY k.kunden_name ASC 
+3

'tbl_projekte' 테이블이 아닌'tbl_kunden' 테이블에서'kunden_name'을보고 있습니다. 그렇다면'JOIN'해야합니다. –

+0

여기에 독일어 열 이름을 게시하는 것은 전 세계 모든 사용자에게 혼란을줍니다. 또한 응용 프로그램에서이를 방지해야합니다. – hek2mgl

답변

1

예, 당신은 당신이 고객의 이름으로 주문하려는 경우이

SELECT p.* 
FROM tbl_projekte p 
INNER JOIN tbl_kunden k on k.uid = p.kunden_id 
WHERE p.werbemittel ='12' 
ORDER BY k.kunden_name ASC 
0

에 대한 가입이 필요, 다음이 방법을

: 당신이 명시하려면

SELECT * 
FROM tbl_projekte, tbl_kunden 
WHERE werbemittel ='12' 
ORDER BY kunden_name ASC 

SELECT * 
FROM tbl_projekte NATURAL JOIN tbl_kunden 
WHERE werbemittel ='12' 
ORDER BY kunden_name ASC 

'자연 조인'은 기본 키 (귀하의 경우에는 uid)와 동일한 값을 가진 테이블을 병합합니다.

0

가 ','가입 암시 자연입니다 :

관련 문제