文字数[542文字] この記事は1分41秒で読めます.

MySQL知っている人にはとっては常識的なことだけど初心者は知らないこと。

20160826

Logging


MySQL知っている人にはとっては常識的なことだけど初心者は知らないこと。
ググればあるレベルなことを書いてみることにする。
アップデートやインサートをする場合、デリートもそうだけど
自分自身(テーブル)を呼び出せない罠・・・・。
すこし考えれば当たり前だけど、初心者はどうして出来ないかと
悩んでしまう人も中に入ると思います。
なぜ、出来ないかというと今からアップデートやインサートを
するテーブルに問い合わせするということは、矛盾することになるから
そういう事は出来ないようにMYSQLはなっています。
もしそういう事をしたいのならテンポラリテーブルを作って
そのテーブルを呼び出して処理することをお勧めします。
じゃ他のテーブルなら呼び出せるのという問いですが
呼び出すことは可能です。MYSQL5以上なら
サブクエリー(副問合せ)が可能です。
自分がやっていることが副問合せになっているかどうか
コレが副問合せということかは分かりませんが
呼び出すことが可能ですw
こんな感じでUpdateやInsertが可能です。

update tbl set hoge=(select hogeko from tbl2 where hogeko=1) where hoge>7;

674番目の投稿です/126 回表示されています.

著者名  @taoka_toshiaki

※この記事は著者が30代前半に書いたものです.

Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki

OFUSEで応援を送る

タグ

AM, Insert, MYSQL, MYSQL5以上, select hogeko from tbl2 where hogeko, update tbl set hoge, where hoge&gt, アップデート, インサート, サブクエリー, すこし, デリート, テンポラリテーブル, 初心者, 副問合せ, 問い, 基礎, 改訂版,