-1

$query_array['datepicker']と の 2 つの日付が等しいかどうかを確認したいabsensi_tanggal。それらは異なる形式を持っているのでCONVERTabsensi_tanggal.

SQL は自動的に日付を変換しますか? 変換しないようにしましたが、クエリが機能していません。常に 0 行を返します。

だから私はこのコードを試しましたが、うまくいきません。

$q = $this->db->select('*', 'CONVERT(VARCHAR(10), absensi_tanggal, 101) AS temp')->from('msabsensi')->limit($limit, $offset)
             ->join('msumat', 'msabsensi.umat_id = msumat.umat_id')
             ->join('mskelas', 'mskelas.kelas_id = msumat.kelas_id');

$q->where('CONVERT(VARCHAR(10), absensi_tanggal, 101)', $query_array['datepicker']);
$result['rows'] = $q->get()->result();

これは私が得たエラーです(私がCONVERT ASしたことは機能しselect()ていないと思います):

Error Number: 1064

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'VARCHAR(10), absensi_tanggal, 101) '04/01/2013' LIMIT 10' at line 5

SELECT * FROM (`msabsensi`) JOIN `msumat` ON `msabsensi`.`umat_id` = `msumat`.`umat_id` JOIN `mskelas` ON `mskelas`.`kelas_id` = `msumat`.`kelas_id` WHERE CONVERT(VARCHAR(10), absensi_tanggal, 101) '04/01/2013' LIMIT 10

Filename: C:\xampp\htdocs\ci_gabdb\system\database\DB_driver.php

Line Number: 330

どんな助けでも大歓迎です、ありがとう:D

4

1 に答える 1