我有以下查询:
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
Run Code Online (Sandbox Code Playgroud)
所以我正在使用INNER JOIN并抓住了image_id.所以现在,我想把image_id images.filename从图像表中转换成.
如何将其添加到我的查询中?
Cod*_*ian 185
你可以简单地添加另一个这样的连接:
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
Run Code Online (Sandbox Code Playgroud)
但请注意,因为它是一个INNER JOIN,如果你有一个没有图像的消息,将跳过整行.如果有可能,您可能想要执行一个LEFT OUTER JOIN只返回所有仪表板消息和image_filename(否则您将获得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
Run Code Online (Sandbox Code Playgroud)
Bri*_*oll 12
只需添加另一个联接:
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
Run Code Online (Sandbox Code Playgroud)
小智 8
我分享了在单个SQL查询中使用两个LEFT JOINS的经验.
我有3张桌子:
表1)患者包括PatientID,PatientName列
表2)约会包括列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
Run Code Online (Sandbox Code Playgroud)
我写了解决方案,以获取日期格式,如"mm/dd/yy"(以我的名字"VARUN TEJ REDDY")
小智 6
SQL 中的多重联接通过一个接一个地逐步创建派生表来工作。请参阅此链接解释该过程:
https://www.interfacett.com/blogs/multiple-joins-work-just-like-single-joins/
| 归档时间: |
|
| 查看次数: |
329815 次 |
| 最近记录: |