« 2007年11月 | トップページ | 2008年1月 »

2007年12月

MySQLでOracleのrownumやSQLServerのTopを実現する

グリッドのページ送りをしたいときや、大量データのテーブルなどで取得データの件数を制限したい場合ありますよね。

OracleではROWNUMで、SQLserverではTOPというキーワードがあります。

もちろんMySQLにもあります。それが「limit」。どちらかというとSQLserverのTOPに近い感じかな。

MySQLマニュアル

[1] 先頭から10件を取りたい場合。

select * from test
where aaa = '1'
   order by key01
   limit 10

[2] 最後から5件を取りたい場合。

select * from test
where aaa = '1'
   order by key01 desc
   limit 5

[3] 先頭から100件目~150件目を取りたい場合。

select * from test
where aaa = '1'
   order by key01
   limit 100, 150

引数が1つでも2つでも勝手に解釈してくれます。さらに応用でこんなこともできます。

データをランダムに10件取得する。

select * from test
where aaa = '1'
   order by rand()
   limit 10

MySQLの関数「 rand()」でランダムに割り当てて並び変えて先頭を取得でおしまい。

ほかのデータベースで同じ事を実現しようとすると、なかなか大変です。

やっぱり便利。MySQL。

| | コメント (0) | トラックバック (0)

行列のできる店のラーメン 山形

今日は箸休めで、システムとは関係ありません。

たまたま近所のスーパーで売っていたので、購入。

日清 行列のできる店のラーメン 山形 からみそ味

結果。予想以上にかなりうまい。

かなり山形の「龍上海」を意識している感じで、
にぼしのダシがきいている濃厚みそスープ。これだけでもそこそこうまいみそラーメンなのに、付け合せの辛みそが、さらに辛さとうまみを向上させていてうまかった。

山形の「龍上海」思い出した。

「辛みそラーメン」好きの人は絶対おすすめ。
個人的には辛みそを増量してほしいくらいかな。

でも気になることが。

スーパには残り1個だけだったし、パッケージには期間限定と書いてあるし、日清のホームページにも乗ってないし売り切れたら食べれないよ。

なんとかなりませんか日清さん。

近くのセブンイレブンでも半年前くらいから山形「龍上海」の
お店のカップラーメンが売っていて、あの商品の入れ替えが激しい
コンビニで半年以上も並んでいるなんて人気がある証拠

2008年は「辛みそラーメン」ブームが来るなと勝手に思い込んでいます。

| | コメント (0) | トラックバック (0)

SQLserver2005をWindows2000 Proにインストール

SQLserver2005の案件がありインストールしてわかったこと。

Windows2000 Professional のサーバが空いていたので、試しにインストールしました。

とりあえず最新のWindows Updateをあてて、 IISもインストール。

CDからインストーラーを起動。

インストール準備画面が起動してMicrosoft Windows .NET Framework 2.0をインストール。

インストールチェックも全てOK。

まあここまでは順調。

その後、インストールするツール等を選んで、実行ボタンを押すとエラー発生。

.NET Frameworkを再度インストールし直してください。

え。。さっき入れたじゃん。

仕方ないので、Microsoft Windows .NET Framework 2.0 SP1にUPDATEした。

また、CDから起動し直して、先ほどのエラーが出たところまでゆく。

今度は、インストールが始まる。(よかった)

小一時間ほどしてインストールが完了。

やっと終わったので、接続用のユーザを作成しようと思い、管理画面からユーザ作成をおこなう。

ところがここで、このバージョンのWindowsではサポートされていませんというエラーメッセージでユーザが作れない。

ひどい。ひどいよ。インストールできたじゃん。

多少いろいろ調査しましたが、エラーがあまりに多く、Windows2000 Professionalでインストールするのはあきらめました。

せっかくインストール時のチェックやっているのだから、その時点でだめならだめと教えてくれよ。まる1日無駄にしてしまった一日でした。

microsoftインストール要件

| | コメント (0) | トラックバック (0)

Google Chartsでグラフ

Google Charts

やっぱりでたな~。
はてなグラフでた頃にもう少し高機能なもの作ったら面白いだろうなと思いながら約1年。完成できなかったけど。googleさんが作ってくれた。

機能も豊富で、レスポンスも文句なし。さすがです。

日本語も感じは”??”になってしまうが「ひらがな」「カタカナ」は表示できた。

方法は

1.「ひらがな」「カタカナ」をUTF-8でURLエンコードする。

「Web便利ツール 」こちらのサイトで変換できます。

2.APIのパラメータにエンコードされた文字列を渡す。

これでOK。そのうち漢字も対応されるでしょう。

サンプル

http://chart.apis.google.com/chart?cht=p3&chd=t:90,49&chs=350x150&chl=%e3%81%b2%e3%82%89%e3%81%8c%e3%81%aa|%e3%82%ab%e3%82%bf%e3%82%ab%e3%83%8a

Google Charts はこちら

| | コメント (0) | トラックバック (0)

MySQLでUTF-8の設定方法

Red Hat Enterprise Linux 4
mysql 5.0.27での設定

RPMでインストールした場合、デフォルトのキャラクターセットはlatin1となる、UTF-8にしたい場合は下のように設定ファイルに追加する必要がある。

/etc/my.cnf

[mysqld]
default-character-set=utf8
skip-character-set-client-handshake

 

「default-character-set=utf8」だけでいけるとおもったら、クライアントのキャラクターセットが「latin1」になってる。
そこで調べたら「skip-character-set-client-handshake」という設定が必要なんだとわかった。

「skip-character-set-client-handshake」はクライアントから接続したときにクライアント側の文字コードを「default-character-set」で指定されたものに自動設定するオプションなんだって。これは知らなかった。

| | コメント (0) | トラックバック (0)

« 2007年11月 | トップページ | 2008年1月 »