私は、conn_date
と呼ばれる1つのファイルが登録されたクライアントの日付を含むclients
と呼ばれるテーブルを持っています。日付に基づいてmysqlデータベースからデータを取得するには?
今、このテーブルからconn_date
が登録された日付よりも大きく、現在の日付よりも小さいデータを取得したいとします。
ユーザーが2016-06-01
に登録されている場合coon_date
が
conn_date列値
2016-06-01
2016-08-30
2016-08-30
2016-07-01
2016-08-03
2016-09-18
MySQLのクエリ
$get_client = "SELECT SUM(cbp.pay_amount) AS total_pay_amount, SUM(cbp.discount_amount) AS total_discount_amount, SUM(cbp.advance_amount) AS total_advance_amount, SUM(cbp.due_amount) AS total_due_amount, cbp.advance_amount, cbp.bill_month, YEAR(cbp.bill_month) AS myBillYear, MONTH(cbp.bill_month) AS myBillMonth, cbp.cbp_id, cbp.due_amount, cbp.pay_amount, c.conn_date, c.status, c.client_id, c.monthly_bill, c.user_id, c.address, c.contact_no, zone.zone_name, package.package_name, c.bill_date FROM clients AS c
LEFT JOIN zone ON zone.zone_id = c.zone_id
LEFT JOIN package ON package.package_id = c.package_id
LEFT JOIN clients_pay_bill AS cbp ON cbp.client_id = c.client_id
WHERE c.uid = '$uid' AND c.conn_date <= CURDATE() ";
if($selected_zone != "all") {
$get_client .= " AND c.zone_id != '' ";
} elseif($selected_zone == "all") {
$get_client .= " AND c.zone_id != '' ";
} else {
$get_client .= " AND c.zone_id = '$selected_zone' ";
}
$get_client .= " GROUP BY c.client_id ORDER BY c.client_id DESC ";
より大きく
2016-06-01
未満
現在の日付をここで、すべてのデータが返されるべき今現在の月のみを表示しています登録された日付よりも大きくない!
クエリの登録日の参照はありません。 – shmosel
登録日は 'conn_date'カラムです –
*このテーブルから、' conn_date'が登録された日付*より大きいデータを取得します。 'conn_date'はそれ自身よりもどのように大きくなるのでしょうか? – shmosel