読者です 読者をやめる 読者になる 読者になる

MySQLでNULLを空文字に変換 - ifnullとnullif

データ調査でSQLの出力内容をスプレッドシートに貼りつけるとき、NULLが入ると邪魔なので。mysqlでやったことなかったので調べた。ifnullだった。 mysql> select ifnull(null, 'yes'); +---------------------+ | ifnull(null, 'yes') | +------------------…

カラムから特定の文字を取り除く

Replaceで UPDATE person SET phone_number = REPLACE(phone_number, '-', ''); DjangoのQuerysetで同じことができないかどうか調べたけど無理だった。Fがサポートするのは数値演算のみ Query-related classes | Django documentation | Django

MySQLでバージョンナンバーをソートする

2.6.4のようなバージョンを表す文字列でソートしたい。普通にorder byすると「2.0.0」よりも「11.0.0」が小さいと判定されてしまう。 mysql> SELECT version FROM app ORDER BY version DESC; + version + 2.0 11.0 1.1.1 1.0.1 1.0.0 1.0 1 + 7 rows in set…

mysqlでクエリ結果をファイル出力する

リモートサーバーなどで、コンソールからmysqlにクエリ投げた結果をコピペして、スプレッドシートに貼り付けたい 標準の出力だと罫線がじゃまなのでちょっと調べてた INTO OUTFILEでファイル出力できた select * from help_keyword limit 10 into outfile '/…

Django+mysqlでDateFieldを月ごとに集計する。

関連 : mysqlでdate型を月毎に集計する - brainstorm昨日SQLで書いたやつをDjangoのquerysetで書けるかどうかいろいろ試してみた。実行したいSQL select DATE_FORMAT(event_date, "%Y%m") as ym, count(id) as count from event group by DATE_FORMAT(event_…

mysqlでdate型を月毎に集計する

以下のように日付をもつテーブルがあるとする。 CREATE TABLE `event` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(255) NOT NULL, `prefecture` varchar(3) NOT NULL, `event_date` date NOT NULL, PRIMARY KEY (`id`) ); id prefecture event…

mysqlでdate型に時間を足してdatetimeを取得する

日付(date)と時刻(int)を別カラムにしているテーブルがあるとする。 CREATE TABLE `event` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(255) NOT NULL, `prefecture` varchar(3) NOT NULL, `event_date` date NOT NULL, `event_hour` smallint(…

mysqlでrootのパスワードを変更する

mysqladmin -u root -pcurrentpassword password 'xxxxxxxxxx' もしくは $ mysql -u root -pcurrentpassword set password for root@localhost=password('xxxxxxxxxxx');

Fatal error: Can't open and lock privilege tables: Incorrect file format 'user'

ubuntuサーバで動かしていたmysqlが落ちてた。 しかも立ち上がらない。エラーログ $ cat /var/log/mysql/error.log 140208 21:11:32 [Note] Plugin 'FEDERATED' is disabled. 140208 21:11:32 InnoDB: Initializing buffer pool, size = 8.0M 140208 21:11:3…

SSHポート転送経由で外部サーバーのmysqlに接続する

remote_serverにlogin_userアカウントで接続し、ポート転送を行います。 鍵認証にしていない場合はパスワード聞かれます。 $ ssh -N -f -L 3307:localhost:3306 login_user@remote_server user@server's password: -N は転送のみ許可 -f はバックグラウンド…

MySQLで実行されたSQLをログ出力する2

昨日紹介したチートシートでmysqlのクエリを確認するってのがあったので試してみました。 試した環境はmacosx 10.7.5です。rubytune ― rails devops/sysadmin cheat sheet チートシートにはこう紹介されてました。 pt-query-digest --processlist h=localhos…

Out of sort memory, consider increasing server sort buffer size

mysqlがこんなエラーを吐きました。 Out of sort memory, consider increasing server sort buffer size' sort_buffer_sizeを増やしてrestartしたら動くようになりました。/etc/my.cnf [mysqld] port = 3306 socket = /tmp/mysql.sock skip-external-locking…

mysqlでダンプデータのインポート

やるたびに忘れてて調べてる気がする $ mysql -u user -p db_name < dump.sql

DjangoのモデルでDBカラムにmediumtextを指定する

MySQLの場合はmediumtextにしたい。他にsqlite3を使うことが考えられるが、その場合はtextでいい。こんな感じ? class MediumTextField(models.TextField): def db_type(self, connection): if connection.settings_dict['ENGINE'] == 'django.db.backends.m…

django.core.exceptions.ImproperlyConfigured

今日はMacOSX lion でdjango + MySQLの環境を構築してたんですが、アプリ動かしたときに以下のエラーが発生しました django.core.exceptions.ImproperlyConfigured: Error loading MySQLdb module: dlopen(/Users/yuhei/.virtualenvs/sandbox/lib/python2.7/…