以下の内容はhttps://bleis-tift.hatenablog.com/entry/20080824/1219583067より取得しました。


CASE・・・演算子?

今日職場でという本*1を読んだ。
その中で、CASE式が演算子として紹介されてた。
まぁ、CASE「文」として紹介するよりも遙かにましなんだけど・・・その後にJavaのswitchと同じような物、みたいなことが書かれていてしょんぼり。


CASE式はswith文なんかとは全然違うよ!
式だからほとんどどこにでも書ける*2んだよ!!


例えば。

-- 勘定科目コードによって貸方を足すか、借方を引くかが違うときとかに使える
SELECT sum(CASE col1 WHEN 1 THEN col2 ELSE -col3 END) FROM SomeTable

こんな風に、集計関数の中に入れることだって出来ちゃう。


でもあえてCASEを演算子として教えても、弊害はあんまりないかな。
だとするとこれは何項演算子だ?最低2項必要だけど、それ以上も可能だし・・・
あれ、それ以前に、IN述語なんかも演算子と考えると・・・


これは弊害なのかどうなのか。

*1:エクスメディアじゃん!懐かしい(ぇ

*2:というか文だったらSELECT文の中にすら書けない




以上の内容はhttps://bleis-tift.hatenablog.com/entry/20080824/1219583067より取得しました。
このページはhttp://font.textar.tv/のウェブフォントを使用してます

不具合報告/要望等はこちらへお願いします。
モバイルやる夫Viewer Ver0.14