[pgsql-jp: 36454] Re: CASE文について
Naoki.Kuniyoshi.
nao_k @ din.or.jp
2005年 11月 28日 (月) 16:20:52 JST
kuniyoshiです。
こういう事なのではないでしょうか?
SELECT cid, largeq, enq65, CASE WHEN enq65 BETWEEN 2 AND 8 THEN 1 ELSE 0
END FROM
kenqt WHERE cid = '235' AND largeq = '2' AND del_flag IS NULL;
試してはいません。
文字列比較か、数値比較かの違いだとぱっと見で見えました。
On Mon, 28 Nov 2005 16:05:36 +0900
水沼寛喜 <mizunuma @ m-design.com> wrote:
>お世話になっております。水沼です。
>
>CASE文で以下の様なSQL文を放っているのですが、
>期待する様な結果になりません。
>
>●実行したSQL文
>SELECT cid, largeq, enq65, CASE WHEN enq65 BETWEEN '2' AND '8' THEN 1 ELSE 0
>END FROM
>kenqt WHERE cid = '235' AND largeq = '2' AND del_flag IS NULL;
>
> cid | largeq | enq65 | case
>-----+--------+-------+------
> 235 | 2 | 29 | 1
> 235 | 2 | 29 | 1
> 235 | 2 | 13 | 0
> 235 | 2 | 19 | 0
> 235 | 2 | 31 | 1
> 235 | 2 | 38 | 1
>
>
>●期待する結果
>上記の様なSQL文ですと
>
> cid | largeq | enq65 | case
>-----+--------+-------+------
> 235 | 2 | 29 | 0
> 235 | 2 | 29 | 0
> 235 | 2 | 13 | 0
> 235 | 2 | 19 | 0
> 235 | 2 | 31 | 0
> 235 | 2 | 38 | 0
>
>となるはずですが、何故ならないのでしょうか?
>
>●環境
>
>OS:REDHAT7.3
>PostgreSQL:PostgreSQL 7.2.8
>
>ご教授の程、よろしくお願い致します。
>
>------------------------------------
>株式会社エム・ディ−・シ− 水沼 寛喜
>mizunuma @ m-design.com
>〒212-0012 川崎市幸区中幸町3-2
>TEL:044-555-3185 FAX:044-555-5700
>------------------------------------
>
>
--
"Naoki.Kuniyoshi." <nao_k @ din.or.jp>
"Naoki.Kuniyoshi." <nao @ mars95.to>
pgsql-jp メーリングリストの案内