web-dev-qa-db-ja.com

mysqlの簡単な「ビューからテーブルを作成する」構文?

ビューからの結果のキャッシュであるテーブルを作成したい。ビューの定義からテーブルを自動的に定義する簡単な方法はありますか、それともshow create table view

36
user151841

ビューから_CREATE TABLE SELECT_を実行してビルドできます。ビューのすべての行を含む新しいテーブルとして、ビューの構造を複製する必要があります。このステートメントの MySQL構文リファレンス は次のとおりです。

_CREATE TABLE tbl_from_view AS    
  SELECT
    col1,
    col2,
    col3,
    col4,
    col5
  FROM your_view;
_

列の選択を非常に明示的にしたいことに注意してください。ソースビューから_SELECT *_を実行することはお勧めできません。 COUNT(*), MAX(*), (col1 + col2)などのような計算列または集計列のエイリアスがあることも確認してください。

53

また、mysqldumpの出力には、ビューを定義する直前に、ビューをテーブルとして作成するステートメントがあることがわかりました。それらを解析し、クエリとして実行できます。

1
user151841