我有两张桌子:registered_students
- cols:regnum和student
- cols:regnum,name
所以我正在处理查询以从两个表中进行选择。它到目前为止工作,但现在我想为它添加一个where子句,并且它没有返回任何行。这是查询
SELECT registered_students.regnum
, student.name
FROM registered_students
INNER JOIN student ON registered_students.regnum=student.regnum
示例数据:
registered_students 1).reg3030 2). reg4032
student 1).reg3030 John Doe 2).reg4032 Luke White
所以我需要添加一个像WHERE regnum LIKE 'reg4%'
答案 0 :(得分:0)
您必须指定别名,因为两个表中的列具有相同的名称,请尝试以下查询:
SELECT registered_students.regnum, student.name
FROM registered_students JOIN student ON registered_students.regnum=student.regnum
WHERE registered_students.regnum LIKE 'reg4%';
输出还取决于两个表中reg4
的数据的可用性。如果以上操作不起作用,您可以尝试以下操作:
WHERE LOWER(registered_students.regnum) LIKE 'reg4%'
LEFT JOIN
如果您想要来自其中任何一个表的数据<强>更新强>
使用更新的数据,可能是因为空格或值的开头有一个点,我会尝试以下内容:
SELECT registered_students.regnum, student.name
FROM registered_students JOIN student ON TRIM(registered_students.regnum) = TRIM(student.regnum)
WHERE registered_students.regnum LIKE '%reg4%';