MySQL
null入れたい MySQL Workbenchでnullを入れたい。 文字を消して保存すれば良いように思えるけど、それは空文字になる。 じゃあどうするか 右クリック 右クリックすると、メニューが出てくる。 Set Field to NULL と書かれているのを選ぶとnullが入る
調査依頼が来ました 『このSQL、table_nameにindexもwhereも用意してるのに遅いからチェックしてー』って言われて、調査をしてみようと思いました。 select data.* from (select * from table_name left join ~~~~) as data where table_name.date ~~ あ、こ…
バックアップを取りたい データベースのバックアップを取りたい。 あるいは、他所のDBのデータを別なDBに移したい。 mysqldump mysqldumpを使うと、データの状態を再現するsqlファイルを生成することが出来る mysqldump -u user_name -p > output_file_name …
MySQLWorkbenchでmysqldumpしたい mysqldumpをしたい。 でもコマンドで打つのは怖い。 ってことでMySQLWorkbenchを使ったが、以下のエラー mysqldump Version Mismatch エラーメッセージ的には、ローカルと接続先のmysqlのバージョンが違うよとのこと。 では…
類似記事 www.nyamucoro.com 一文字だけ任意の値にしたい SQLで、一文字だけ任意の文字にしたい。 数値で、2100や2200、2300とかを調べたい。 _を使う SELECT * FROM users WHERE id LIKE '2_00'; これで、 _の部分は任意の1文字という扱いになる。 結果、21…
SQLって見にくいこと多いですよね よく、自分や他の人のSQL文を見直すのですが、まーーーーあ見にくい。 ってことで、見やすいSQL文ってどんなのだろう? 友人2人と一緒に私のSQL文をリファクタリングしてみました! 元コード SELECT DISTINCT rankings.*, C…
個人サイトを作ってみよう http://nyamucoro.com/nyamucoro.com ってことで、作ってます! その過程でなにをしたかを少しずつ書いておきます! こんな感じに作ったのかーとか、これじゃまずくね?みたいなご指摘とか。 ほっこり楽しんでもらえると嬉しいです…
こんなとき困るよね 最初にMySQLインスタンス作りました。 Laravelとかプロジェクトに合わせてDBスキーマ作成したい。 該当スキーマに対してだけアクセスできるユーザー作りたい。 ・・・コマンドなんだっけ。 ってことで備忘録的にまとめ。 コマンド create…
こんなとき Cloud SQLを使ってMySQLを作りました。 その上で、開発中等にMySQLWorkbenchなどのアプリケーションでアクセスしたい。 ドキュメント 基本的にはここを参照。 ローカルテストにプロキシを使用する場合のクイックスタート | Cloud SQL for MySQL |…
GCPでMySQLを用意したい ということで、GCP上でMySQLを使えるようにしましょう。 やり方 メニューから、SQLの項目をクリック インスタンスの作成を選択 データベースエンジンの選択 (今回はMySQLを選択) インスタンスタイプの選択 (MySQL第2世代を選択。料金…
こんなときにつかう select 'count(id)' FROM 'users' GROUP BY 'group_id'; GROUP BYではgroup_idでまとめているが、idの方で重複がある場合。 この時、 idが[1,2,3,4,4,5]だった場合、 count(id)の値は6になる。 idの4が重複しているので、合計を5にしたい…
dump取りました データ用意したよ!バックアップから、mysqlを更新だ! えっと、コマンドなんだっけ こんな感じ mysql -u user_name -h host_name -p db_name < table_data.dump 各コマンド解説 -u user_name -p ユーザーネームとパスワード指定 -h host_nam…
こんなとき使う カラム数が多いテーブルを取得するとき。 mysql> select * from users where id = 1; +----+-----------+----------------+-----------+---------------+-------------+---------------+------------------+--------------------------------…
SQLで、特定の文字を探したい messageカラムに、 ringoが含まれている文字列を探したい。 aoringoとか、akaringoとかがあるレコードを探したい。 こう書く LIKEと%を使おう SELECT * FROM users WHERE message LIKE '%ringo%'; これで、usersテーブルの、mes…
Dockerfile FROM php:7.1-fpm phpファイル $dbh = new PDO('mysql:host=mysqlaaa;dbname=dbname', 'username', 'password); エラー could not find driver 対処法 RUN docker-php-ext-install pdo_mysqlの一文をDockerfileに付け足す FROM php:7.1-fpm RUN d…
desc table_nameでなにこれとなる なぜ1だったり、4だったり指定されているのかと思って調べてみた。備忘録。 tinyintとは 1byteの数値。 符号なしなら、0から255、符号ありなら、-128から127まで。 tinyint(1)は mysqlの時だけ、0or1を指します。つまり、bo…
Mysqlでnullをorderbyしてみた id|number| 1 | 1| 2 | 2| 3 |null| 4 | 4| 5 | 5| これのnumberを昇順(asc)でorderbyしたらどうなるか。 id|number| 3 |null| 1 | 1| 2 | 2| 4 | 4| 5 | 5| ナンデダヨ。 どうして? MySQL :: MySQL 5.6 リファレンスマニュア…
sqlでDELETEの前にSELECTしよう DELETE from table WHERE id = 2; をいきなりすると、予定外のフィールドを消してしまう場合があります。 なので SELECT * from table WHERE id = 2; で消すフィールドを確認。 正しければ、SELECT *をDELETEに変えれば DELET…