Выбор последних 7 дней из Now () в MYSQL

Спасибо, что нашли время, чтобы посмотреть на мой вопрос.

У меня есть этот запрос 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)