首页 新闻 赞助 找找看

SELECT * FROM WZTG_SSW WHERE WZTG_MEMBER

0
悬赏园豆:5 [已解决问题] 解决于 2008-12-19 13:35

SELECT * FROM WZTG_SSW WHERE WZTG_MEMBER_ID=3 AND WZTG_REVIEW = 1 ORDER BY WZTG_SORT,WZTG_PUBTIME  GROUP BY WZTG_SORT 我哪里写错了,去掉GROUP BY可以查出数据,不去说是“在关键字 'GROUP' 附近有语法错误。”

liangjer的主页 liangjer | 初学一级 | 园豆:0
提问于:2008-12-19 12:17
< >
分享
最佳答案
0

主要是你的语法顺序有问题,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

GUO Xingwang | 老鸟四级 |园豆:3885 | 2008-12-19 13:24
其他回答(3)
0

建议看看SQL的关键字执行顺序 

SELECT *

FROM WZTG_SSW

WHERE WZTG_MEMBER_ID=3 AND WZTG_REVIEW = 1 

GROUP BY WZTG_SORT

ORDER BY WZTG_SORT,WZTG_PUBTIME

早起的鸟儿有虫吃 | 园豆:205 (菜鸟二级) | 2008-12-19 12:27
0

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 

BB_Coder | 园豆:797 (小虾三级) | 2008-12-19 12:31
0

先group by 才能order by的吧 这个是运算问题 楼主

order by 要在最后排序的

Denuvead | 园豆:205 (菜鸟二级) | 2008-12-19 13:10
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册