MARCO's FREE MEMO

携帯フォトや備忘録などをちょこっと…

データベーススペシャリスト

2013年06月27日 22時58分14秒 | Database
毎年のように春と秋に受けている情報処理試験
しばらく合格とは無縁の日々だった
春のデータベーススペシャリストは2010年に午後Ⅱであと1点足りなくて不合格とかもあったのだが、このたびめでたく合格した!!
いまさら資格取ったからって威張れないなー
と思っていたのだが、この資格って国家資格だし過去の合格者数も2万人足らずしかいないらしく、難易度も結構高いってことらしいので自慢気に書いてみた(笑)
相変わらず午前Ⅰが鬼門だったのだが、今回はギリギリセーフで乗り越えたのが大きかった!
やっぱ合格するって嬉しいもんだなー
秋のシステムアーキテクトも頑張るぞ!
おー!

グループごとに順位付け

2009年02月11日 09時07分39秒 | Database
oracleで、グループごとの順位を表示するSQL

男女別に得点の高い順に順位を表示する
select row_number() over (partition by 性別 order by 得点 desc),名前,得点
from テーブル1

こないだ仕事で使った。いろいろな機能があるのでSQLだけでもかなりのことができるな。

#####
水曜が祝日っていうのはいいな♪
自宅で学習のために立てているlinuxサーバにpostgreSQLを入れたので、phpで接続するプログラムを作ってみよう。
あ、そのlinuxサーバだが新年早々にエラーを起こしてぜんぜん起動しなくなった。買い換えようかと思って中古屋を物色していたりしたのだが、つい3日前に電源を入れたら起動した。
去年の夏にも同じようなことがあって「熱暴走」だったんだな、と思っていたのだが、冬にも起きてしまった。
やっぱり長時間稼動させると駄目なのかな?

ぼちぼち様子を見ながら使ってみよう


複数のフィールドを結合した条件

2008年07月24日 14時39分50秒 | Database
オラクルで複数のフィールドを結合して条件抽出するSQL

TABLE_Aが以下の構造とする
フィールドFAFBFCVAL
データ1110101aaaaa
データ2121102bbbbb
データ3121103ccccc
データ4130301ddddd
データ5131102eeeee


ここから単一フィールドでは集約できない値(たとえばデータ1とデータ3だけ)を抽出したい時に以下のSQLが使える。

select * from TABLE_A where (FA || FB || FC) in('110101','121103');

普通にやるとANDとORを駆使して面倒になるところがすっきりしたSQLになる。
まあ滅多にこんな抽出はしないと思うが・・・。

#月島にもんじゃを食べに行った。
#もんじゃの店が何十軒も並んでいてさすがは「もんじゃの聖地」という感じだった。
#みんなで作りながら食べる料理でもんじゃほどわいわい楽しめる料理は数少ないだろうな。
#また行きたいと思った。


数字のフォーマット

2008年07月03日 22時40分01秒 | Database
オラクルのSQLで数字のフォーマットが指定できることを今頃知った。

select to_char(SUUJI,'00000') from TABLEA

SUUJIが1234だったら「01234」として出力される

select to_char(SUUJI,'99,990') from TABLEA
とすると「1,234」と出力される

なーんだー。今までプログラム側でフォーマットを指定してたよ・・・。

#7月2日(ナツの日だそうだ)、鎌倉に行ってきた。
#長谷寺は紫陽花がとってもきれいだった。
#写真のお地蔵さんはその長谷寺に居ました。
#なんか表情がとっても良くて幸せな気持ちになりました。



テーブル情報

2008年01月29日 12時37分57秒 | Database
MySQLでフィールド情報を表示させるのは超簡単だ。

show fields from テーブル

これでOK。

テーブル一覧は show tables で表示される。

この2つを組み合わせるとテーブルレイアウトが参照できるアプリが作れる
というかPHPで作った。

BLOBの読み書きもできるようになった。
めでたしめでたし。

#昨日は寒くて体調不良だった
#頭痛がするので退社時刻に速攻で帰って早寝したら治った
#やっぱり栄養と睡眠が大切だ



tomcatからMySQL

2008年01月14日 21時50分21秒 | Database
Linuxサーバのセットアップだが、なんとか動きが確認できるようになった。
接続情報で以下の部分を修正したらOKだった。
変更前) factory="org.apache.tomcat.dbcp.dbcp.BasicDataSourceFactory"
変更後) factory="org.apache.commons.dbcp.BasicDataSourceFactory"

MySQLも最初は文字化けしていたが、以下の設定後にデータベースを作ったらOKになった。
mysql > set names utf8;
$ sudo nano /etc/mysql/my.cnf
[mysqld]
default-character-set = utf8
skip-character-set-client-handshake

これからぼちぼちPHPを覚えていこう。

#「銀色のシーズン」を観てきた。
#雪景色に心を洗われるようで、スキーのスピード感に心が躍った。
#そういうばもう10年以上もスキー場に行っていないなあ・・・。
#今年は久々に白銀の世界を見に行くかなぁ


ソートを工夫する

2007年12月21日 23時39分24秒 | Database
たとえば評価項目をS→A→B→Cの順に出力したい時に order by句にちょっと工夫してみる。

select * from テーブル
order by (case when 評価='S' then 1 else 2 end),評価

今日仕事中にこれを思いついた自分を思わず尊敬してしまった。
今年は case when にだいぶお世話になりました(笑)

#今月は土曜日も忙しくてプールにいけない
#あしたは泳ぎに行きたいな・・・
#風邪やインフルエンザが流行っているけど負けないぞ!


中国語(簡体字)の表示

2007年12月09日 23時16分30秒 | Database
オラクルで登録した中国語を表示する場合IE6だと文字化けすることへの調査をした。
IE7では文字化けしないがIE6では文字化けする(「・」になる)。
オラクルの文字コードはUTF-8なので、ブラウザのソースを表示してみると文字化けする文字は文字コードが出力されている。
いろいろと調べたことろスタイルシートでフォントを指定すると良いようだ。
要するに中国語表示に対応しているフォントとしていないフォントがあるということなのだろう。
指定するフォントは以下の通り
font-family:"MS Sans Serif","ヒラギノ角ゴ Pro W3",Arial,sans-serif;
これで大体のOS、ブラウザでOKらしい。試していないのでどこまでいけるのか分からないが・・・。


#「ミムラの絵本日和」の発売記念イベントで握手会に行ってきた。
#今年の私はミーハーである。
#6月には竹内結子さんを舞台挨拶で見てきたし・・
#握手会ってすごいな。たった2言3言とはいえちゃんと会話ができるんだもの
#ミムラさんは感性が豊かでしかもその感性を素敵に表現できる人だと思った。

データをコピーするSQL

2007年10月22日 12時35分48秒 | Database
既存のデータをコピーして新しいデータを登録するSQL

insert into TABLE_A (KEY_FLD,FLD_A,FLD_B) select 'copy',FLD_A,FLD_B from TABLE_A where KEY_FLD='org'

簡単なSQLなのによく忘れる。健忘症?ボケ?

写真は「綾鷹」のページで作れる家紋。

【心】 理屈や計算よりも心と心の結びつきを大切にする心紋のあなた。例え相手がどんな人間だろうと差別をせず、誠心誠意の対応をとる素晴らしい性格の持ち主です。その反面、ストレスを溜めやすい体質でもあります。時には肩の力を抜き、気楽に生活するのも人生を楽しく生きるコツです。

いやー照れるな(笑)

昨日は情報処理試験を受けてきた。
午前と午後Ⅰはまあまあかな?午後Ⅱの論文が自信ない・・・。
午前の回答がアップされてたので今夜答え合わせしてみようっと。