다음 쿼리가 있습니다.
SELECT
dashboard_data.headline,
dashboard_data.message,
dashboard_messages.image_id
FROM dashboard_data
INNER JOIN dashboard_messages
ON dashboard_message_id = dashboard_messages.id
그래서 나는를 사용 INNER JOIN
하고 image_id
. 이제이 image_id를 images.filename
이미지 테이블에서 가져오고 싶습니다 .
내 쿼리에 어떻게 추가 할 수 있습니까?
답변
다음과 같이 다른 조인을 추가 할 수 있습니다.
SELECT dashboard_data.headline, dashboard_data.message, dashboard_messages.image_id, images.filename
FROM dashboard_data
INNER JOIN dashboard_messages
ON dashboard_message_id = dashboard_messages.id
INNER JOIN images
ON dashboard_messages.image_id = images.image_id
그러나이므로 INNER JOIN
이미지가없는 메시지가있는 경우 전체 행을 건너 뜁니다. 이것이 가능한 경우 LEFT OUTER JOIN
모든 대시 보드 메시지와 하나가있는 경우에만 image_filename을 반환 하는 a를 수행 할 수 있습니다 (그렇지 않으면 null이 표시됨).
SELECT dashboard_data.headline, dashboard_data.message, dashboard_messages.image_id, images.filename
FROM dashboard_data
INNER JOIN dashboard_messages
ON dashboard_message_id = dashboard_messages.id
LEFT OUTER JOIN images
ON dashboard_messages.image_id = images.image_id
답변
다른 조인을 추가하기 만하면됩니다.
SELECT dashboard_data.headline,
dashboard_data.message,
dashboard_messages.image_id,
images.filename
FROM dashboard_data
INNER JOIN dashboard_messages
ON dashboard_message_id = dashboard_messages.id
INNER JOIN images
ON dashboard_messages.image_id = images.image_id
답변
단일 SQL 쿼리에서 두 개의 LEFT JOINS를 사용한 경험을 공유했습니다.
3 개의 테이블이 있습니다.
표 1) 환자는 PatientID, PatientName 열로 구성됩니다.
표 2) Appointment는 AppointmentID, AppointmentDateTime, PatientID, DoctorID 열로 구성됩니다.
표 3) Doctor는 DoctorID, DoctorName 열로 구성됩니다.
질문:
SELECT Patient.patientname, AppointmentDateTime, Doctor.doctorname
FROM Appointment
LEFT JOIN Doctor ON Appointment.doctorid = Doctor.doctorId //have doctorId column common
LEFT JOIN Patient ON Appointment.PatientId = Patient.PatientId //have patientid column common
WHERE Doctor.Doctorname LIKE 'varun%' // setting doctor name by using LIKE
AND Appointment.AppointmentDateTime BETWEEN '1/16/2001' AND '9/9/2014' //comparison b/w dates
ORDER BY AppointmentDateTime ASC; // getting data as ascending order
“mm / dd / yy” (내 이름 “VARUN TEJ REDDY”) 와 같은 날짜 형식 을 얻는 솔루션을 작성했습니다.
답변
SQL의 다중 조인은 파생 테이블을 차례로 점진적으로 생성하여 작동합니다. 프로세스를 설명하는 다음 링크를 참조하십시오.
https://www.interfacett.com/blogs/multiple-joins-work-just-like-single-joins/