gpt4 book ai didi

mysql - 我想按姓氏对我的表进行分区?

转载 作者:太空宇宙 更新时间:2023-11-03 10:52:31 26 4
gpt4 key购买 nike

<分区>

我希望能够计数,然后根据 C.LastName 的计数对我的表进行分区。我刚刚学习 SQL,并不完全确定 COUNT(...) 行在程序中的工作方式。

这是根据 LastName 对表进行计数和分区的正确方法吗?

出于某种原因,SQL 中的这行代码似乎很难看清它是如何工作的。

 select C.*,
COUNT(*) over (partition by c.LastName) as '--Count--'
from Customer C;

表:

PrimaryKey  FirstName   LastName    MiddleName  PhoneNumber Address1    Address2    City    State   Zipcode
1 Test1 LTest1 MTest1 5555555555 555 Governors 5555 Governors Avenue Pierre TT 99999
2 Test2 LTest2 MTest2 4444441234 444 Governors Street 4444 Governors Blvd Bill PP 44444
3 Test3 LTest3 MTest3 3333331234 333 Governors Street 3333 Governors Street Pop RR 33333
4 Test1 LTest1 MTest9 7777777777 77 Governors Avenue 7 Governors Street Yet UU 22222
10 FirstName LastNme MiddleName 8888888889 321 H Street 4321 U Street TownUSA VB 77777
11 NULL A NULL NULL NULL NULL NULL NULL NULL
12 NULL A NULL NULL NULL NULL NULL NULL NULL
13 NULL A LTest NULL HTest NULL NULL NULL NULL
14 Test14 LTest14 MTest14 1231231234 123 VVV Billings Billings NULL NULL
15 NULL NULL NULL NULL NULL NULL NULL NULL NULL
16 NULL A NULL NULL NULL NULL NULL NULL NULL
17 NULL A NULL NULL NULL NULL NULL NULL NULL
18 NULL A NULL NULL NULL NULL NULL NULL NULL
19 NULL test NULL NULL NULL NULL NULL NULL NULL
20 NULL NULL NULL 1 123 ave 123 ave NULL NULL NULL

客户表:

1   Test1                   LTest1                  MTest1                  5555555555      555 Governors                                       5555 Governors Avenue                               Pierre      TT          99999
2 Test2 LTest2 MTest2 4444441234 444 Governors Street 4444 Governors Blvd Bill PP 44444
3 Test3 LTest3 MTest3 3333331234 333 Governors Street 3333 Governors Street Pop RR 33333
4 Test1 LTest1 MTest9 7777777777 77 Governors Avenue 7 Governors Street Yet UU 22222
10 FirstName LastNme MiddleName 8888888889 321 H Street 4321 U Street TownUSA VB 77777
11 NULL A NULL NULL NULL NULL NULL NULL NULL
12 NULL A NULL NULL NULL NULL NULL NULL NULL
13 NULL A LTest NULL HTest NULL NULL NULL NULL
14 Test14 LTest14 MTest14 1231231234 123 VVV Billings Billings NULL NULL
15 NULL NULL NULL NULL NULL NULL NULL NULL NULL
16 NULL A NULL NULL NULL NULL NULL NULL NULL
17 NULL A NULL NULL NULL NULL NULL NULL NULL
18 NULL A NULL NULL NULL NULL NULL NULL NULL
19 NULL test NULL NULL NULL NULL NULL NULL NULL
20 NULL NULL NULL 1 123 ave 123 ave

NULL NULL NULL

新查询:

SELECT C.*,
A.B as "--Count--"
FROM Customer c
INNER JOIN
(
SELECT lastname,
count(*) as B
FROM customer
GROUP BY lastname
) A
ON c.lastname = A.lastname;

谢谢你向我展示这个例子。计数 (*) 是否为 B(我更改了一些变量只是为了让我知道你可以。A 和 B 不是很好用的变量名。

作为 B 的计数 (*) 是否引用该选择语句中的姓氏。这是我唯一不确定的陈述。

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com