[PHP-users 21447]Re: 初歩的ですが。。

SAWAI-Shooskay teto @ sa-y.com
2004年 4月 21日 (水) 13:03:21 JST


さわいです。

DB関連って 門外漢なので よくわかってないんですけど 
ちょっと 時間があったのでぐぐってみたりして、おりました。

> > MySQLって、To_CHARがないんですね。
> > OracleとPostgreSQLで存在するからてっきりMySQLでもあると思ってました。
> 
> どのバージョンからだったかは忘れましたが、to_char などのものは
> 「Oracle 互換関数」として PostgreSQL に追加されたものです。
> たぶん、Oracle からの移行を容易にするため… などの意図なのでしょう。

ふむ。なるほど。でも 何人かが to_char を使う SQLを提示されていた
わけで ふつうに あると おもうくらい よく使うんでしょうね。
数値から文字列への変換関数だそうで、、、日付型?からも変換
できるようですね。

MySQLでは 日付型からの変換には date_format ってのをつかうようです。
参考URL
http://dev.mysql.com/doc/mysql/ja/Date_and_time_functions.html


yoshida <noah_ @ ...> さんの を変更するなら

$sql = "select * from book_ma where DATE_FORMAT(date_on_db,'%Y/%m/%d') = '$date_from_php'";

って 感じでしょうか。

MySQLのテーブルがどのように設計されてるか解らないし
MySQLつかってないので 未保証です。

きになってるのが  上記のURLで 日付が 1999-01-01 と -で つながってることですね。

antyobiさんが かいてたデータは / で 区切られていたようですし、、、
日付型ではなく 文字列型として データに記録されているのでしょうか。
そしたら 別の解じゃないと だめかもね。(つーか なんで 日付型じゃないんだろ。)

でだ、 文字列型のデータだったとして、
武藤さんが 書かれていた
 SELECT * FROM テーブル名 WHERE 項目名 LIKE 'YYYY/MM/DD%';

ってのは YYYY/MM/DD が 一致させたい日付で %が 任意の文字列
つまり YYYY/MM/DDと前方一致の データを セレクトする って ことで

検索できそうですね。

丁度 昼休みが 終わりました。


PHP-users メーリングリストの案内