Спасибо, что нашли время, чтобы посмотреть на мой вопрос.
У меня есть этот запрос MYSQL:
foreach( $wpdb->get_results( "SELECT wp_pixelcart_calendar.datefield AS DATE, IFNULL(SUM(wp_pixelcart_daily_sales.quantity),0) AS total_sales FROM wp_pixelcart_daily_sales RIGHT JOIN wp_pixelcart_calendar ON (DATE(wp_pixelcart_daily_sales.order_date) = wp_pixelcart_calendar.datefield) WHERE (wp_pixelcart_calendar.datefield BETWEEN (SELECT MIN(DATE(order_date)) FROM wp_pixelcart_daily_sales) AND (SELECT MAX(DATE(order_date)) FROM wp_pixelcart_daily_sales)) GROUP BY DATE" ) as $key => $row) { echo "<br>". $row->DATE . "',". $row->total_sales . "],"; }
Мне сложно отображать последние семь дней с момента запроса, и я играю с:
BETWEEN (SELECT MIN(DATE(order_date)) FROM wp_pixelcart_daily_sales) AND (SELECT MAX(DATE(order_date)) FROM wp_pixelcart_daily_sales))
К этому:
BETWEEN NOW() FROM wp_pixelcart_daily_sales) AND DATE_ADD(NOW(), INTERVAL 7 DAY) FROM wp_pixelcart_daily_sales))
Но это, похоже, не работает.
Любая помощь оценивается.
благодаря
если это не работает, возвращая 0 результатов, рассмотрите возможность замены диапазона дат:
BETWEEN DATE_SUB(NOW(), INTERVAL 7 DAY) AND NOW()
Вы могли бы просто написать:
SELECT * FROM table WHERE date_field > DATE_SUB(NOW(), INTERVAL 7 DAY)
WHERE order_date <= NOW() AND order_date >= DATE_SUB(order_date, INTERVAL 7 DAY)