2017-08-22 10 views
0

私は、外部ソースからすべてインポートされた1000個のテーブルで構成されるMYSQLデータベースを持っています。複数のMYSQLテーブルの結合

| 1502838000-1502924399_ulog  | 
    | 1502838000-1502924399_urls  | 
    | 1502924400-1503010799_sessions | 
    | 1502924400-1503010799_ulog  | 
    | 1502924400-1503010799_urls  | 
    | 1503010800-1503062776_sessions | 
    | 1503010800-1503062776_ulog  | 
    | 1503010800-1503062776_urls  | 
    | 1503062777-1503097199_sessions | 
    | 1503062777-1503097199_ulog  | 
    | 1503062777-1503097199_urls  | 
    | 1503097200-1503183599_sessions | 
    | 1503097200-1503183599_ulog  | 
    | 1503097200-1503183599_urls  | 
    | 1503183600-1503269999_sessions | 
    | 1503183600-1503269999_ulog  | 
    | 1503183600-1503269999_urls  | 

ご覧のとおり、基本的に3種類のテーブルがあります。セッション、ulog、およびURL。私がしたいのは、firstNameとlastNameのセッションで終わるすべてのテーブルを照会することです。他の2つのタイプについても同様のクエリを実行したいと思います。 Iveはたくさんのものを試しましたが、実際にはどこにもいませんでした。

アイブは、すべてのタイプを1つのテーブルにまとめてみました。最終的には3つのテーブルがありますが、その上にフラットになっています。

Iveもクエリを実行しようとしましたが、正しいテーブルを循環するクエリを取得できないようです。

誰でも助けてください。

+0

あなたはこれまで何をしていますか?あなたの質問を投稿してください。 – Eric

+0

動的SQLを使用する必要があります(またはmysqlの外で実行します)。 [mysql - 複数のテーブルの結果をデータベースに照会する](https://stackoverflow.com/q/11935023/6248528)あなた自身の好意を持って、これを使用してすべてのデータを新しい(または3つの)新しい単一のテーブルに挿入し、データを1000の独立したテーブルに保持しないでください。 – Solarflare

+0

@ Ive Iveは次のように元のデータベーステーブルのすべての名前を含む別のテーブルを作成しようとしました:CREATE TABLE中間テーブル名select information_schema.tablesのtable_name where table_schema = 'wifistats'; Iveは次にinformation_schema.tablesからemailAdを選択しました。中間テーブル名はtable_schema = 'wifistats'とtable_name LIKE '%sessions' INTO OUTFILE '/var/lib/mysql-files/emails.csv' FIELDS TERMINATEDです。 BY '、';その方法は私が知っているが、その最も近いIveはそれまでに得た:| –

答えて

0

PHP-CLI用のスクリプトを1つのテーブルに書くのが最も簡単ですが、より複雑なSQL文を理解することなく、高速でテーブルをスキャンできます。

関連する問題