cakephp で model->query でSQLを直に書いていて、

case when 文や to_dateなどの関数を使っているのですが、sql関数 は使えないのでしょうか。
というのも、Sql関数を使って実行すると、結果をprint_rしてみますと、
sql文で指定している擬似カラム名が配列キーに返ってきません。。(以下のように、途中できれたも文字列が配列キーになっています)

Array
(
[0] => Array
(
[0] => Array
(
[select distinct id,trunc(to_date(sakusei_date] => 219
['YYYYMMDDHH24MISS')) as sakusei_date,trunc(to_date(shonin_date] => 2012-11-14 00:00:00
['YYYYMMDDHH24MISS')) as shonin_date from v_list WHERE cd = '9999999999'] => 2012-11-14 00:00:00
)

)

環境はcakephp1.3 + oracle11gになります。
また、SQL内の改行をなくして、以下のように1行にしてもかわらずです。
なげているsqlは以下です。
$sql = "select distinct id,trunc(to_date(sakusei_date, 'YYYYMMDDHH24MISS')) as sakusei_date,trunc(to_date(shonin_date, 'YYYYMMDDHH24MISS')) as shonin_date from v_list WHERE cd = '?'";

回答の条件
  • 1人10回まで
  • 13歳以上
  • 登録:2012/12/31 02:12:16
  • 終了:2013/01/07 02:15:03

回答(1件)

id:oil999 No.1

oil999回答回数1728ベストアンサー獲得回数3202012/12/31 10:22:55

ポイント100pt

MySQLでは正常に動作しますよ。
SQL文の途中に改行コードなどの制御文字が入っていませんか?
1行のSQL文にしてみてください。

id:yayayai

ありがとうございますっ
1行にもしてみたりしているのですが、だめですね、、

2012/12/31 11:49:31
id:yayayai

環境はcakephpが1.3 でDBはoracleになります

id:yayayai

質問文を編集しました。詳細はこちら

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません