Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?

重複行を削りたいならunionを使う。重複行を生かしたいならunion allを使う。 ここまではよいとして、どっちでもよい場合、例えば 重複行があり得ない場合 IN句のサブクエリなので重複行があってもなくても結果に影響しない場合 にどうするか。 以前はunionをデフォルトにして、重複行を生かしたいときだけunion allしていたが、今は逆に、union allをデフォルトにして重複行を削りたいときだけunionする、という方針にしている。理由はいくつかあるが、allを付けると Sort->Unique の処理が走らないのでパフォーマンス上有利になるはず、というのが大きい。 絶対に重複行が発生しないことが分かっているクエリでも、unionを使うとSort->Uniqueの処理が走ってしまうDBMSは多い。 例えばPostgreSQL: UNION bench=# explain ana
-eオプションでSQLを実行する。 mysql -uroot -e "show tables" -eオプションはトランザクションに注意。 以下はトランザクションは効いていません。 mysql -uroot -e "begin;" date mysql -uroot -e "insert into hoge values(1, 2, 3);" date mysql -uroot -e "commit;" トランザクションが効かない理由は簡単です。 mysqlコマンド毎にコネクションが切れているからです。 従って、-eオプションでトランザクションを有効にするには、以下のようにワンライナーにするしかありません。 mysql -uroot -e "begin; insert into hoge values(1, 2, 3); commit;" bashの変数をSQLに埋め込む事も可能です。以下は
新しいアプリケーションの機能を実装する際に、ローカルや開発者向けのデータベースにアクセスして、プログラムを実装する前に何度かSQLをためしに実行することもあるかと思います。その際に、補完機能や以前実行したSQLの検索機能等がある場合とない場合では、作業の効率が変わってきます。 そこで、今回は補完や検索機能など、多くの便利な機能をもつmycliというクライアントについて紹介をしていきます。 デモンストレーション環境 今回は5.7.12を第5回 Dockerで複数バージョンのMySQLを開発環境に用意するで作成した環境で実行して確認していきます。また、今回使用するデータは「第2回 MySQLにはじめてのデータを入れてみる」で紹介をしている郵便番号のテーブルを用いて紹介を行います。 mycliのインストール ここではMySQLのクライアントの1つであるmycliを紹介します。mycliは自動補完
DoctrineでSQLの日付関数を使う方法 Symfony Advent Calendar 2015 第一日目の記事です。 http://qiita.com/advent-calendar/2015/symfony Symfony+Doctrine2でシステムを開発していて、「日付何年のデータだけほしい」、「何年何月のデータだけほしい」という場合。 どう対応していますか? DateTimeで頑張る まず、もっとも基本的なやり方として、DBから全件取得したうえで条件を満たすもののみの配列を作るという方法があります。 たとえば、今月ログインしたユーザーを取得したいなら、下記のようになります。 $today = new \DateTime('today'); $activeUsers = array_filter($em->getRepository('AcmeDemoBundle:User'
概要 これは MySQL リファレンスマニュアルです。 MySQL 8.0 から 8.0.25、および NDB のバージョン 8.0 から 8.0.25-ndb-8.0.25 に基づく NDB Cluster リリースについてそれぞれ説明します。 まだリリースされていない MySQL バージョンの機能のドキュメントが含まれている場合があります。 リリースされたバージョンの詳細は、「MySQL 8.0 リリースノート」を参照してください。 MySQL 8.0 の機能. このマニュアルでは、MySQL 8.0 のエディションによっては含まれていない機能について説明します。このような機能は、ご自身にライセンス付与されている MySQL 8.0 のエディションに含まれていない場合があります。 MySQL 8.0 の使用しているエディションに含まれる機能に関する質問がある場合は、MySQL 8.0
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く