kunitsuji
tsuji****@m-s*****
2008年 7月 7日 (月) 11:45:05 JST
kunitsujiです。 こんな感じで。OKですね。 $start_day = "start_day <= DATE_FORMAT(CURRENT_TIMESTAMP(), '%Y-%m-%d % H:%i:%s')"; $this->db->where($start_day); $query = $this->db->get('c_access_log_id'); > >decoyさん、こんにちは。 >自分active recorクラスを使わないので何とも言えませんが、 >'%Y-%m-%d %H:%i:%s'が¥がついてしまうということですよね? > >$ymdstr = '%Y-%m-%d %H:%i:%s' >として >? で渡すのはむりですかね?w >やってみてませんが。。。。これからやってみますw > > >>decoyです。 >> >>WHERE句に >>start_day <= DATE_FORMAT(CURRENT_TIMESTAMP(), '%Y-%m-%d %H:%i:%s') >>AND end_day >= DATE_FORMAT(CURRENT_TIMESTAMP(), '%Y-%m-%d %H:%i:%s') >>というものを使いたい場合 >>Active Record クラスのwhereメソッドやget_whereメソッドに >>どのように書けばクエリが正しく生成されますでしょうか。 >> >>1. >>$this->db->get_where( >> テーブル名, >> array( >> 'start_day <=' => "DATE_FORMAT(CURRENT_TIMESTAMP(), '%Y-%m-%d >>%H:%i:%s')", >> 'end_day =>' => "DATE_FORMAT(CURRENT_TIMESTAMP(), '%Y-%m-%d >>%H:%i:%s')", >> ), >>); >> >>2. >>$this->db->where('start_day <=', "DATE_FORMAT(CURRENT_TIMESTAMP(), '%Y-%m-%d >>%H:%i:%s')"); >>$this->db->where('end_day >=', "DATE_FORMAT(CURRENT_TIMESTAMP(), '%Y-%m-%d >>%H:%i:%s')"); >>$this->db->get(テーブル名); >> >>1や2のやり方でやった場合、下記のようになってしまい正しく生成されませんでした。 >> >> >>start_day <= 'DATE_FORMAT(CURRENT_TIMESTAMP(), \'%Y-%m-%d %H:%i:%s\')' >>end_day >= 'DATE_FORMAT(CURRENT_TIMESTAMP(), \'%Y-%m-%d %H:%i:%s\')' >> >>$this->db->query(クエリ直書き);すれば意図している結果は返ってきますが >>出来るだけ避けたいと考えております。 >> >>以上、宜しくお願い致します。 >> >>_______________________________________________ >>Codeigniter-users mailing list >>Codei****@lists***** >>http://lists.sourceforge.jp/mailman/listinfo/codeigniter-users > >_______________________________________________ >Codeigniter-users mailing list >Codei****@lists***** >http://lists.sourceforge.jp/mailman/listinfo/codeigniter-users