主要是你的语法顺序有问题,Group by是在Order by之前的,此外,主意你的select * 就是选择了所有字段,那么这些字段是否可以分组,也就是说如果不能唯一确定分组的,就也放在Group BY后面。例如有表a
id name
1 xxx
1 yyy
那么我们只能这样才能茶询到:
select * from a group by id,name如果
只是:
select * from a group by id就会报错,当然使用聚合函数不会报错
select id,count(*) from a group by id
建议看看SQL的关键字执行顺序
SELECT *
FROM WZTG_SSW
WHERE WZTG_MEMBER_ID=3 AND WZTG_REVIEW = 1
GROUP BY WZTG_SORT
ORDER BY WZTG_SORT,WZTG_PUBTIME
SELECT * FROM WZTG_SSW
WHERE WZTG_MEMBER_ID=3 AND WZTG_REVIEW = 1
GROUP BY WZTG_SORT
ORDER BY WZTG_SORT,WZTG_PUBTIME
也不行。
SELECT WZTG_SORT,(这里只能写聚合函数;比如sum count之类....) FROM WZTG_SSW
WHERE WZTG_MEMBER_ID=3 AND WZTG_REVIEW = 1
GROUP BY WZTG_SORT
ORDER BY WZTG_SORT,WZTG_PUBTIME
先group by 才能order by的吧 这个是运算问题 楼主
order by 要在最后排序的