簡體   English   中英

嵌套在codeigniter中的where條件

[英]nested where condition in codeigniter

從該數據中,我如何獲取tbl_attendance中的user_id沒有當前日期為application_status 3和4的所有用戶

attendance_id   user_id      date_in        attendance_status status 0=absent 1=present 3 = onleave 4 = onoff
    1            1          2017-02-05      1
    2            36         2017-02-11      4
    3            36         2017-02-11      4
    4            36         2017-02-11      3
    5            1          2017-02-02      1
    6            36         2017-02-01      1

我的代碼是這樣的

$date=date('Y-m-d');
$this->db->where('tbl_users.user_id NOT IN(SELECT user_id FROM tbl_attendance WHERE tbl_attendance.date_in= "'.$date.'" )');

$this->db->where_in( 'tbl_attendance.attendance_status', array( '3', '4' ) );

想要合並這兩行並產生輸出,例如當前日期是3或4,請幫助我

你可以這樣嘗試結合兩個條件

$this->db->where("tbl_users.user_id NOT IN(SELECT user_id FROM tbl_attendance WHERE tbl_attendance.date_in='$date' AND tbl_attendance.attendance_status IN(3,4))");

看到您正在使用查詢生成器...

$this->db->group_start()
    $this->db->where_in( 'tbl_attendance.attendance_status', array( '3', '4' ) );
    $this->db->where_not_in('tbl_users.user_id', 'SELECT user_id FROM tbl_attendance WHERE tbl_attendance.date_in = '. $date, false)
$this->db->group_end()

應該管用

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM