簡體   English   中英

PDO條件:創建日期為今天

[英]PDO Condition: created date is today

我正在嘗試在查詢中設置“ date = today”條件。 數據庫中的日期存儲為“ 1351504197”。

這是我的嘗試:

->condition('cord.created',REQUEST_TIME - 3600, '<=')

這是完整的查詢:

  $query = db_select('commerce_order', 'cord')->extend('TableSort');
  $query->join('commerce_line_item', 'li', 'cord.order_id = li.order_id');
  $query->join('commerce_product', 'item', 'item.sku = li.line_item_label');
  $query->fields('cord', array('order_id'))
        ->fields('li', array('quantity'))
        ->fields('item', array('title', 'sku'))
        ->groupBy('title')
        ->condition('cord.status', 'pending', '=')
        ->condition('cord.created',REQUEST_TIME - 3600, '<=')
        ->orderByHeader($header); 

  $query->addExpression("GROUP_CONCAT(li.order_id separator ', ')", 'order_id');         
  $query->addExpression('SUM(quantity)', 'quantity');

但是返回的結果當然是不正確的。

有人知道該怎么做嗎?

看起來好像是unix時間戳。 如果您使用的是本機MySQL日期/時間字段,則必須使用from_unixtime()unix_timestamp()在它們之間進行轉換

解決方法是:

  $today = getdate();
  $start_time = mktime(0, 0, 0,$today['mon'],($today['mday'] - 1), $today['year']);
  $end_time = time();

  ->condition('cord.created', array($start_time, $end_time), 'BETWEEN')

暫無
暫無

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

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