这可能听起来简单而且愚蠢但是如何从表中获取foreign
键的值并显示它?
我有一个名为“subjects
”的表格,其中包含不同的学校科目,其中一列是foreign
密钥,引用名为“faculty
”的表格。
TABLE subjects
___________________________________
| sub_id | sub_faculty | sub_desc |
| 1 | 2 | PHYSICS |
| 2 | 3 | MATH |
| 3 | 4 | HISTORY |
|________|_____________|__________|
TABLE faculty
________________________
| fac_id | fac_name |
| 2 | John |
| 3 | Mark |
| 4 | Johnny |
|________|_____________|
我首先要检查“subject
”表格中是否存在数据,然后继续显示foreign key
的行值。
我有这个不那么有效的查询显示JOHN
和JOHNNY
。我正在使用LIKE
,因为它将用于系统的搜索功能,所以希望你可以帮我解决这个问题。
SELECT *
FROM subject, faculty
WHERE subject.sub_desc = 'PHYSICS'
AND subject.sub_year = '4'
AND faculty.fac_name LIKE '%JOHN%'
GROUP BY faculty.fac_id
答案 0 :(得分:1)
SELECT *
FROM subject s
join faculty f
on s.sub_faculty = f.fac_id
WHERE s.sub_desc = 'PHYSICS'
AND s.sub_year = '4'
AND f.fac_name LIKE '%JOHN%'