私はLAMPを使用していて、phpMyAdminでMySQlを維持しています。私はInnoDBテーブルのマルチテーブルクエリを作成するたびにJOINをタイプするのがうんざりです。MySQL phpMyAdmin外部キーからJOINを構築する
誰かが外部キーからJOIN文を生成するためのプラグイン、アプローチ、またはリソースを知っていますか?
私はLAMPを使用していて、phpMyAdminでMySQlを維持しています。私はInnoDBテーブルのマルチテーブルクエリを作成するたびにJOINをタイプするのがうんざりです。MySQL phpMyAdmin外部キーからJOINを構築する
誰かが外部キーからJOIN文を生成するためのプラグイン、アプローチ、またはリソースを知っていますか?
私はすべての外部キーからJOIN
ステートメントを構築するクエリを書くことになった:
CREATE VIEW Joins_All AS
SELECT
concat(" JOIN ",TABLE_NAME," ON ",
TABLE_NAME,".",COLUMN_NAME," = ",
REFERENCED_TABLE_NAME,".", REFERENCED_COLUMN_NAME)
AS myJoin
FROM INFORMATION_SCHEMA.KEY_COLUMN_USAGE
WHERE REFERENCED_TABLE_NAME IS NOT NULL
UNION
SELECT
concat(" JOIN ",REFERENCED_TABLE_NAME," ON ",
TABLE_NAME,".",COLUMN_NAME," = ",
REFERENCED_TABLE_NAME,".", REFERENCED_COLUMN_NAME)
AS myJoin
FROM INFORMATION_SCHEMA.KEY_COLUMN_USAGE
WHERE REFERENCED_TABLE_NAME IS NOT NULL
ORDER BY myJoin ASC
それはこのようなものを生成:Area_Tare.Id_Area = Area.Id_Area
上の領域を登録しよう私はこのファイルとコピー/私はそれらを必要とqhen適切な行を貼り付けたり、私はビューをフィルタリングを保存を
JOIN Area_Tare ON Area_Tare.Id_Area = Area.Id_Area
JOIN Insect O N Insect.Id_Insect_Class = Insect_Class.Id_Insect_Class
昆虫ON Insect_Insumo_Formula_Ingredient.Id_Insect = Insect.Id_Insect
を登録しよう目的のテーブルの名前
これは、外部キーに基づいてGUIクエリービルダーを作成するために、これを(これは私がこの時点で行うことはありません)PHPで簡単に行うことができます。そうすることに決めた人は、このコードを自由に使ってください。
さらに、where句では、テーブルをフィルタリングして必要な関係のみを取得することができます。 :) –