我有一个问题,我在表X(格式:yyyy)中有一年的出生属性以及表Y中的出生日期属性(不同的格式:dd-mm-yyyy)。
它们都是varchar()类型属性。我想在这些属性上加入这些表。例如,我想选择同年出生的所有人的姓名。我怎么能这样做?
答案 0 :(得分:0)
(更新)假设出生日期属性始终将最后四个字符作为年份,请尝试:
select...
from X
join Y on X.year_of_birth = substr(Y.date_of_birth, length(Y.date_of_birth)-3,4)
SQLFiddle here。
答案 1 :(得分:0)
尝试使用DATE_FORMAT()
JOIN table2 ON DATE_FORMAT(table1.bday, "%Y") = DATE_FORMAT(table2.bday, "%Y")