s********u 发帖数: 1109 | 1 没上过Database,自学一下SQL。
1.Wildcard和Regular Expression是同一用途的两种东西?而且SQL用的通配符和通常
电脑上搜索文件的不一样啊。
2.我看cc150有这样的描述:
"we can only select values that are in an aggregate function or in the group
by clause"这个可以理解,因为group了之后,如果你选择没有被group的那些列,那
就会出现多个值冲突的问题。
但首先,如果没有group by,我们当然是可以随意select的,那么也就是这个规则是有
个前提的。当然,也可以理解成不group就是group by *?
其次,我试了下:
SELECT CustomerName,Country
FROM Customers
GROUP BY Country
这样也是可以的,只不过CustomerName自然只能返回其中一项(因为每个country有很
多customer)。也就是这个规则不是硬性规定? |
s*****r 发帖数: 43070 | 2 aggregate function 只能用在group by的field上,比如sum(),只是在select里面无
所谓,但返回值无意义
group
【在 s********u 的大作中提到】 : 没上过Database,自学一下SQL。 : 1.Wildcard和Regular Expression是同一用途的两种东西?而且SQL用的通配符和通常 : 电脑上搜索文件的不一样啊。 : 2.我看cc150有这样的描述: : "we can only select values that are in an aggregate function or in the group : by clause"这个可以理解,因为group了之后,如果你选择没有被group的那些列,那 : 就会出现多个值冲突的问题。 : 但首先,如果没有group by,我们当然是可以随意select的,那么也就是这个规则是有 : 个前提的。当然,也可以理解成不group就是group by *? : 其次,我试了下:
|
s********u 发帖数: 1109 | 3 我可能是没理解你的说法,
但是比如
SELECT StudentID,SUM(Scores)
FROM StudentAndScores
GROUP BY StudentID
就是计算每个student的总分。显然是合乎逻辑的吧。这里sum的对象如果是studentID
,反而没有意义了。
您是想说,只有有group by的话,aggregate才有意义?
【在 s*****r 的大作中提到】 : aggregate function 只能用在group by的field上,比如sum(),只是在select里面无 : 所谓,但返回值无意义 : : group
|
s*****r 发帖数: 43070 | 4 哈哈,你是对的
studentID
【在 s********u 的大作中提到】 : 我可能是没理解你的说法, : 但是比如 : SELECT StudentID,SUM(Scores) : FROM StudentAndScores : GROUP BY StudentID : 就是计算每个student的总分。显然是合乎逻辑的吧。这里sum的对象如果是studentID : ,反而没有意义了。 : 您是想说,只有有group by的话,aggregate才有意义?
|
s********u 发帖数: 1109 | 5 还有个问题就是说,
http://www.w3schools.com/sql/trysql.asp?filename=trysql_select_
有个问题啊
比如我有一个表 我希望找到其中某一列的值最大的那一行
必须用order by么
用MAX是不行的,只能保证max值是正确的,但是max对应的那一行没法正确输出。 |
s*****m 发帖数: 8094 | 6 自己搞个db慢慢试
【在 s********u 的大作中提到】 : 还有个问题就是说, : http://www.w3schools.com/sql/trysql.asp?filename=trysql_select_ : 有个问题啊 : 比如我有一个表 我希望找到其中某一列的值最大的那一行 : 必须用order by么 : 用MAX是不行的,只能保证max值是正确的,但是max对应的那一行没法正确输出。
|
l*n 发帖数: 529 | 7 http://stackoverflow.com/questions/3337469/sql-how-to-find-rows
【在 s********u 的大作中提到】 : 还有个问题就是说, : http://www.w3schools.com/sql/trysql.asp?filename=trysql_select_ : 有个问题啊 : 比如我有一个表 我希望找到其中某一列的值最大的那一行 : 必须用order by么 : 用MAX是不行的,只能保证max值是正确的,但是max对应的那一行没法正确输出。
|
s*****r 发帖数: 43070 | 8 sub query
where a = (select max(a) .....
【在 s********u 的大作中提到】 : 还有个问题就是说, : http://www.w3schools.com/sql/trysql.asp?filename=trysql_select_ : 有个问题啊 : 比如我有一个表 我希望找到其中某一列的值最大的那一行 : 必须用order by么 : 用MAX是不行的,只能保证max值是正确的,但是max对应的那一行没法正确输出。
|
B*****g 发帖数: 34098 | 9 90%+的数据库版SQL问题可以用partition by解决,找工作版也不例外
【在 s********u 的大作中提到】 : 还有个问题就是说, : http://www.w3schools.com/sql/trysql.asp?filename=trysql_select_ : 有个问题啊 : 比如我有一个表 我希望找到其中某一列的值最大的那一行 : 必须用order by么 : 用MAX是不行的,只能保证max值是正确的,但是max对应的那一行没法正确输出。
|
l*n 发帖数: 529 | 10 partition by没听说过,是特定数据库的featu?
【在 B*****g 的大作中提到】 : 90%+的数据库版SQL问题可以用partition by解决,找工作版也不例外
|
s********u 发帖数: 1109 | |
B*****g 发帖数: 34098 | |