mysql:15393
From: こんにちは伊藤です <こんにちは伊藤です <ito.takahiro.cp@xxxxxxxxxx>>
Date: Fri, 10 Sep 2010 14:05:55 +0900
Subject: [mysql 15393] 文字列を返す関数で質問です
いつも勉強させて頂いております。
文字列型を返す関数で、「ん?」と思われる現象です。
クエリで文字列を返す関数を使うと、リターンにカンマが入っている場合、カン
マの前しか取得されないようです。
getXX(
in_a int
)
return text
{
select xx into @answer from tbl where key_col = in_a;
return @answer;
}
[tbl]
key_col xx
1 111,222
2 333,444
[テーブルA]
col1 col2
111 val111
222 val222
333 val333
444 val444
って入ってると、
↓下記は正常
select getXX(1) ⇒ 111,222
↓これはNG
select * from テーブルA where col1 in (getXX(1))
⇒col1=111しか取得できない。col1=222もほしかった!
クエリ文中で使うとリターンにカンマがある場合、カンマの前しか返さないらし
い。リターンをvarcharやcharにしても同じでした。
-------------------------------------------------
伊藤崇洋
ito.takahiro.cp@xxxxxxxxxx
-------------------------------------------------
-> 15393 2010-09-10 14:05 [こんにちは伊藤です <] 文字列を返す関数で質問です 15394 2010-09-12 21:44 ┗[とみたまさひろ <tomm] 15395 2010-09-13 10:59 ┗[こんにちは伊藤です <] 15396 2010-09-14 11:59 ┗[とみたまさひろ <tomm] 15397 2010-09-14 13:28 ┗[こんにちは伊藤です <]