カテゴリー別アーカイブ: MySQL

phpMyAdmin でテーブル一覧がページングされるのを解除する

最近のバージョンの PHPMyAdmin は左側のフレームに表示されるテーブル一覧がページングされるようになった。

テーブルを選択する際にいちいちページを切り替えて探さないといけないので、自分にとっては何のメリットも無いどころか、かなり使いにくくなってしまった。

しばらくそのままで使っていたが、我慢の限界で、ページングしないようにできないものか設定をいじってみたら、ページングを解除できた。

vi config.inc.php で以下を追加する

$cfg[‘MaxNavigationItems’] = 100;
$cfg[‘MaxTableList’] = 100;

ログアウトしてログインしなおせば、ページングされずに1画面で表示されるようになった。

テーブルが100個以上ある場合は数字をもっと大きくすれば大丈夫だと思います。

 

MySQLで月別にユニークユーザ数を出すSQL

MySQL のデータの中から月別に○○の数を出す、という集計は良くあるのですが、いつも書き方を忘れてしまうので、例を挙げておきます。

例えば販売データが purchase というテーブルに入っていて、購入者の ID が user_id カラムに、購入日が created_at カラムに格納されているとすると、月別の購入者数は

SELECT DATE_FORMAT(created_at, ‘%Y-%m’) as reg_time,COUNT(DISTINCT user_id) FROM purchase GROUP BY reg_time ;

というSQLで集計できます。

これを使えば、アクセスしたマンスリーユニークユーザ数などを集計することができます。

日別への応用は簡単です、DATE_FORMAT の部分を以下のようにすれば日別になります。

SELECT DATE_FORMAT(created_at, ‘%Y-%m-%d’) as reg_time,COUNT(DISTINCT user_id) FROM purchase GROUP BY reg_time ;