是否有所作为,如果你这样做count(*)VS count(column-name)在这两个例子?
我倾向于总是写作,count(*)因为它似乎更符合我的想法,它是一个集合函数,如果这是有道理的.
但我不确定它是否在技术上最好,因为我倾向于看到没有*经常写的示例代码.
计数(*):
select customerid, count(*), sum(price)
from items_ordered
group by customerid
having count(*) > 1;
Run Code Online (Sandbox Code Playgroud)
与count(列名):
SELECT customerid, count(customerid), sum(price)
FROM items_ordered
GROUP BY customerid
HAVING count(customerid) > 1;
Run Code Online (Sandbox Code Playgroud) 如果我有一个items_ordered表,看起来像这样:
items_ordered
customerid order_date item quantity price
10330 30-Jun-1999 Pogo stick 1 28.00
10101 30-Jun-1999 Raft 1 58.00
10298 01-Jul-1999 Skateboard 1 33.00
10101 01-Jul-1999 Life Vest 4 125.00
10299 06-Jul-1999 Parachute 1 1250.00
10339 27-Jul-1999 Umbrella 1 4.50
10449 13-Aug-1999 Unicycle 1 180.79
Run Code Online (Sandbox Code Playgroud)
我希望获得表中每个不同项目的最高价格,假设一个项目可能在此表格中以不同的价格出现多次,我将如何做到这一点,假设这不起作用:
select item, max(price) from items_ordered;
Run Code Online (Sandbox Code Playgroud)