1

テーブル X (形式: yyyy) に生年属性があり、テーブル Y (別の形式: dd-mm-yyyy) に生年月日属性があるという問題があります。

どちらも varchar() 型の属性です。これらの属性でこれらのテーブルを結合したいと考えています。たとえば、同じ年に生まれたすべての人の名前を選択したいとします。これどうやってするの?

4

2 に答える 2

0

(更新) 生年月日属性の最後の 4 文字が一貫して年であると仮定して、次のことを試してください。

select...
from X
join Y on X.year_of_birth = substr(Y.date_of_birth, length(Y.date_of_birth)-3,4)

ここでSQLFiddle 。

于 2013-04-10T17:21:51.153 に答える
0

使ってみてDATE_FORMAT()

JOIN table2 ON DATE_FORMAT(table1.bday, "%Y") = DATE_FORMAT(table2.bday, "%Y")
于 2013-04-10T17:29:29.310 に答える