2017-09-25 100 views
0

我有2個表:registered_students - 的cols:REGNUM和student - 的cols:REGNUM,名加入其中,在其內部條款加入

所以我工作的一個查詢,以便從兩個表中選擇。它工作到目前爲止,但現在我想添加一個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子句像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%'; 
+0

其仍然沒有工作 – kingraphaII

+0

這意味着你可能沒有任何數據 –

+0

不,我有數據在那裏 – kingraphaII