这个怎么筛选出有值的数据,(,petroNum,cnoocNum,sinopecNum任意一个有值)的前七条?
```sql
SELECT * from
(
SELECT
np.id,
ROUND( AVG( CASE WHEN nc.enterprise_nature = '172' THEN np.price END ), 2 ) AS petroNum,
ROUND( AVG( CASE WHEN nc.enterprise_nature = '173' THEN np.price END ), 2 ) AS cnoocNum,
ROUND( AVG( CASE WHEN nc.enterprise_nature = '175' THEN np.price END ), 2 ) AS sinopecNum,
DATE_FORMAT( np.date, '%Y-%m-%d' ) AS created
FROM
news_price np -- 价格数据表
RIGHT JOIN news_company nc ON nc.id = np.company_id -- 企业信息表
WHERE
np.del_flag = 0
AND np.approval_progress = 2 -- 已通过
AND np.product_id = 2 -- 石油焦
-- AND np.date >= CURDATE() - INTERVAL 8 DAY -- 近九天
-- AND WEEKDAY( np.date ) NOT IN ( 5, 6 ) -- 不含星期六,星期天
GROUP BY
DATE_FORMAT(np.date,'%Y-%m-%d') ORDER BY created desc
)m
```