古い、より自由奔放な時間にまとめられた一連のデータベースを新しいスキーマに解析する作業に取り組んでいます。基本的には、foo98、foo99、foo2000 などのデータベース名で、1 年に 1 つのデータベースです。
したがって、最新の foo データについては、次のようなことができます
SELECT foo_person.mdname AS middle_name,
...
FROM foo_person, foo_place, foo_thing
以前のバージョンの foo データベースに戻ると、ミドル ネームは保存されません。次のようなユニバーサルクエリを作成しようとしました。
SELECT IFNULL(foo_person.mdname, "") AS middle_name,
...
FROM foo_person, foo_place, foo_thing
しかし、MySQL は不明な列 foo_person.mdname について不平を言います。これは、存在しないため完全に合理的です。
存在しない列を MySQL 構文だけで処理する方法はありますか? または、データベース固有のインポート クエリを作成する必要がありますか?