Sql server 如何在MS SQL Server中获取3个表的内部联接
从专家表中,从物种表中检索为企鹅提供护理的人员的名字、姓氏和联系电话 共有3张表格:tbl_专家、tbl_物种、tbl_护理 我需要帮助尝试内部连接表以显示企鹅的第一、最后和联系人Sql server 如何在MS SQL Server中获取3个表的内部联接,sql-server,Sql Server,从专家表中,从物种表中检索为企鹅提供护理的人员的名字、姓氏和联系电话 共有3张表格:tbl_专家、tbl_物种、tbl_护理 我需要帮助尝试内部连接表以显示企鹅的第一、最后和联系人 SELECT specialist_fname, specialist_lname, specialist_contact FROM ((tbl_specialist INNER JOIN tbl_species ON species_care = tbl_species.species_care) INNER JO
SELECT specialist_fname, specialist_lname, specialist_contact
FROM ((tbl_specialist
INNER JOIN tbl_species ON species_care = tbl_species.species_care)
INNER JOIN tbl_care ON care_id = tbl_care.care_id)
WHERE species_name = 'penguin'
;
如果看不到表的确切模式,这有点困难,但是子查询的语法有点不正确,需要对
JOIN
station中多个表中的列进行别名。尝试如下方式重写SQL:
SELECT spl.specialist_fname, spl.specialist_lname, spl.specialist_contact
FROM tbl_specialist spl
INNER JOIN tbl_species s
ON spl.species_care = s.species_care
INNER JOIN tbl_care c
ON s.care_id = c.care_id
WHERE s.species_name = 'penguin'
很明显,我在推断某些列来自联接中的哪些表,但希望您能理解。我找到了答案,谢谢
SELECT specialist_fname, specialist_lname, specialist_contact
FROM ((tbl_specialist
INNER JOIN tbl_care ON tbl_care.care_specialist = tbl_specialist.specialist_id)
INNER JOIN tbl_species ON tbl_species.species_care= tbl_care.care_id)
WHERE species_name = 'penguin'
;