信頼できる唯一の SQL クエリ方言コンバーターは人間の脳です。
ツールは、データ型の名前変更などの基本に役立ちますが、最初に標準型を使用してクエリを作成するだけで、そのようなことの多くを回避できます。
クエリ変数を使用する MySQL クエリを PostgreSQL クエリに変換したり、PostgreSQL (SQL 標準) の再帰的な共通テーブル式を MySQL が理解できるものに変換したりするのは非常に困難です。この 2 つは、まったく異なるストアド プロシージャ言語、異なる組み込み関数、およびあらゆる種類のものを持っています。array_agg
、unnest
など ... そのほとんどは、MySQL 変数を使用してクエリに変換する必要があります。row_number
次に、 、lead
、lag
、および のような実行中のウィンドウとして使用される集計などのウィンドウ関数がありますsum(blah) OVER (...)
。汎用コンバーターは、実際にジョブを実行するためにクエリを「理解」する必要があります。
コンバーター ツールを特定していないため、指定された問題に対する特定の回答は実際には不可能です。
推測では、PostgreSQL クエリを次のように変更すると:
comment_date_gmt timestamp without time zone DEFAULT (current_timestamp AT TIME ZONE 'utc') NOT NULL,
これは、PostgreSQL およびその他の準拠データベースで理解される標準的な言い回しです。