คำถามติดแท็ก group-by

GROUP BY เป็นคำสั่งในมาตรฐานฐานข้อมูลเชิงสัมพันธ์ของ SQL สำหรับการยุบกลุ่มของแถวที่ใช้ค่าฟิลด์ร่วมกันในแถวเดียว ฟังก์ชันการรวมสามารถดำเนินการกับเขตข้อมูลอื่นในกลุ่มเช่น SUM () หรือ AVG () เพื่อเปรียบเทียบข้อมูลที่เกี่ยวข้องเป็นค่าเดียว

7
จะต้องปรากฏในข้อ GROUP BY หรือจะใช้ในฟังก์ชั่นรวม
ฉันมีตารางที่ดูเหมือนผู้โทรรายนี้ 'makerar' cname | wmname | avg --------+-------------+------------------------ canada | zoro | 2.0000000000000000 spain | luffy | 1.00000000000000000000 spain | usopp | 5.0000000000000000 และฉันต้องการเลือกเฉลี่ยสูงสุดสำหรับแต่ละชื่อ SELECT cname, wmname, MAX(avg) FROM makerar GROUP BY cname; แต่ฉันจะได้รับข้อผิดพลาด ERROR: column "makerar.wmname" must appear in the GROUP BY clause or be used in an aggregate …

15
มีอะไรเร็วกว่าเลือก DISTINCT หรือ GROUP BY ใน MySQL?
ถ้าฉันมีตาราง CREATE TABLE users ( id int(10) unsigned NOT NULL auto_increment, name varchar(255) NOT NULL, profession varchar(255) NOT NULL, employer varchar(255) NOT NULL, PRIMARY KEY (id) ) และฉันต้องการได้รับค่าของprofessionฟิลด์ที่ไม่ซ้ำกันทั้งหมดสิ่งที่จะเร็วขึ้น (หรือแนะนำ): SELECT DISTINCT u.profession FROM users u หรือ SELECT u.profession FROM users u GROUP BY u.profession ?

9
สั่ง MySQL โดยก่อนจัดกลุ่มตาม
มีคำถามที่คล้ายกันมากมายที่จะพบได้ที่นี่ แต่ฉันไม่คิดว่าจะตอบคำถามอย่างเพียงพอ ฉันจะดำเนินการต่อจากคำถามยอดนิยมในปัจจุบันและใช้ตัวอย่างของพวกเขาหากไม่เป็นไร ภารกิจในอินสแตนซ์นี้คือรับโพสต์ล่าสุดสำหรับผู้แต่งแต่ละคนในฐานข้อมูล แบบสอบถามตัวอย่างสร้างผลลัพธ์ที่ใช้ไม่ได้เนื่องจากไม่ใช่โพสต์ล่าสุดที่ส่งคืนเสมอ SELECT wp_posts.* FROM wp_posts WHERE wp_posts.post_status='publish' AND wp_posts.post_type='post' GROUP BY wp_posts.post_author ORDER BY wp_posts.post_date DESC คำตอบที่ยอมรับในปัจจุบันคือ SELECT wp_posts.* FROM wp_posts WHERE wp_posts.post_status='publish' AND wp_posts.post_type='post' GROUP BY wp_posts.post_author HAVING wp_posts.post_date = MAX(wp_posts.post_date) <- ONLY THE LAST POST FOR EACH AUTHOR ORDER BY wp_posts.post_date DESC น่าเสียดายที่คำตอบนี้ธรรมดาและเรียบง่ายผิดและในหลายกรณีให้ผลลัพธ์ที่มีเสถียรภาพน้อยกว่าแบบสอบถามแบบเดิม ทางออกที่ดีที่สุดของฉันคือการใช้แบบสอบถามย่อยของแบบฟอร์ม …

11
วิธีใช้การนับและจัดกลุ่มตามที่คำสั่ง select เดียวกัน
ฉันมีแบบสอบถามเลือก SQL ที่มีกลุ่มโดย ฉันต้องการนับระเบียนทั้งหมดหลังจากกลุ่มตามคำสั่ง มีวิธีนี้โดยตรงจาก sql ตัวอย่างเช่นมีตารางที่มีผู้ใช้ฉันต้องการที่จะเลือกเมืองที่แตกต่างกันและรวมจำนวนผู้ใช้ select town, count(*) from user group by town ฉันต้องการมีคอลัมน์ที่มีเมืองทั้งหมดและอีกคอลัมน์หนึ่งที่มีจำนวนผู้ใช้ในทุกแถว ตัวอย่างผลการมี 3 เมืองและผู้ใช้ทั้งหมด 58 คนคือ: Town Count Copenhagen 58 NewYork 58 Athens 58
223 sql  count  group-by 

3
LINQ กับ groupby และนับ
นี่เป็นเรื่องง่าย แต่ฉันกำลังแพ้: ให้ชุดข้อมูลประเภทนี้: UserInfo(name, metric, day, other_metric) และชุดข้อมูลตัวอย่างนี้: joe 1 01/01/2011 5 jane 0 01/02/2011 9 john 2 01/03/2011 0 jim 3 01/04/2011 1 jean 1 01/05/2011 3 jill 2 01/06/2011 5 jeb 0 01/07/2011 3 jenn 0 01/08/2011 7 ฉันต้องการดึงข้อมูลตารางที่แสดงรายการตัวชี้วัดตามลำดับ (0,1,2,3 .. ) โดยมีจำนวนครั้งทั้งหมดที่การนับเกิดขึ้น ดังนั้นจากชุดนี้คุณจะได้: 0 3 1 2 …
222 c#  linq  group-by 

6
ใช้ฟังก์ชั่นหลายกับคอลัมน์หลายกลุ่มโดย
เอกสารแสดงวิธีการใช้ฟังก์ชั่นหลายคนบนวัตถุ GroupBy ในเวลาใช้ Dict ที่มีชื่อคอลัมน์ออกเป็นกุญแจ: In [563]: grouped['D'].agg({'result1' : np.sum, .....: 'result2' : np.mean}) .....: Out[563]: result2 result1 A bar -0.579846 -1.739537 foo -0.280588 -1.402938 อย่างไรก็ตามสิ่งนี้ใช้ได้กับวัตถุ Groupby ซีรีย์เท่านั้น และเมื่อ dict ถูกส่งผ่านไปยัง groupby DataFrame ในทำนองเดียวกันก็คาดว่าคีย์จะเป็นชื่อคอลัมน์ที่ฟังก์ชั่นจะถูกนำไปใช้ สิ่งที่ฉันต้องการทำคือใช้หลายฟังก์ชั่นกับหลายคอลัมน์ (แต่คอลัมน์บางคอลัมน์จะทำงานหลายครั้ง) นอกจากนี้บางฟังก์ชั่นจะขึ้นอยู่กับคอลัมน์อื่น ๆ ในวัตถุ groupby (เช่นฟังก์ชัน sumif) ทางออกปัจจุบันของฉันคือไปทีละคอลัมน์และทำบางอย่างเช่นโค้ดด้านบนโดยใช้ lambdas สำหรับฟังก์ชั่นที่ขึ้นอยู่กับแถวอื่น ๆ แต่มันใช้เวลานาน (ฉันคิดว่ามันต้องใช้เวลานานกว่าจะย้ำผ่านวัตถุกลุ่มโดย) ฉันจะต้องเปลี่ยนมันเพื่อที่ฉันจะวนซ้ำไปตามวัตถุทั้งหมดของกลุ่มในการวิ่งครั้งเดียว แต่ฉันสงสัยว่าถ้ามีแพนด้าในตัวเพื่อทำสิ่งนี้ค่อนข้างเรียบร้อย …


7
นุ่นกลุ่มและผลรวม
ฉันใช้เฟรมข้อมูลนี้: Fruit Date Name Number Apples 10/6/2016 Bob 7 Apples 10/6/2016 Bob 8 Apples 10/6/2016 Mike 9 Apples 10/7/2016 Steve 10 Apples 10/7/2016 Bob 1 Oranges 10/7/2016 Bob 2 Oranges 10/6/2016 Tom 15 Oranges 10/6/2016 Mike 57 Oranges 10/6/2016 Bob 65 Oranges 10/7/2016 Tony 1 Grapes 10/7/2016 Bob 1 Grapes …

6
SQL clause“ GROUP BY 1” หมายถึงอะไร?
มีคนส่งมาให้ผมแบบสอบถาม SQL ที่ข้อประกอบด้วยคำสั่ง:GROUP BYGROUP BY 1 นี่ต้องเป็นตัวพิมพ์ผิดใช่มั้ย ไม่มีคอลัมน์ที่ให้นามแฝง 1. สิ่งนี้หมายความว่าอย่างไร ฉันคิดถูกหรือเปล่าว่านี่ต้องเป็นตัวพิมพ์ผิดใช่ไหม
202 mysql  sql  group-by 

7
MongoDB เลือกกลุ่มนับโดย
ฉันกำลังเล่นกับ MongoDB พยายามคิดวิธีทำง่ายๆ SELECT province, COUNT(*) FROM contest GROUP BY province แต่ดูเหมือนว่าฉันจะไม่สามารถเข้าใจได้โดยใช้ฟังก์ชันการรวม ฉันสามารถทำได้โดยใช้ไวยากรณ์กลุ่มที่แปลกจริง ๆ db.user.group({ "key": { "province": true }, "initial": { "count": 0 }, "reduce": function(obj, prev) { if (true != null) if (true instanceof Array) prev.count += true.length; else prev.count++; } }); แต่จะมีวิธีที่ง่ายกว่า / เร็วกว่าในการใช้ฟังก์ชั่นรวมหรือไม่

4
แบบสอบถาม SQL สำหรับการค้นหาระเบียนที่นับ> 1
PAYMENTผมมีตารางชื่อ ภายในตารางนี้ฉันมี ID ผู้ใช้หมายเลขบัญชีรหัสไปรษณีย์และวันที่ ฉันต้องการค้นหาระเบียนทั้งหมดสำหรับผู้ใช้ทั้งหมดที่มีการชำระเงินมากกว่าหนึ่งรายการต่อวันด้วยหมายเลขบัญชีเดียวกัน อัปเดต:นอกจากนี้ควรมีตัวกรองมากกว่านับเฉพาะระเบียนที่มีรหัสไปรษณีย์แตกต่างกัน นี่เป็นลักษณะของตาราง: | user_id | บัญชี _no | zip | วันที่ | | 1 | 123 | 55555 | 12-DEC-09 | | 1 | 123 | 66666 | 12-DEC-09 | | 1 | 123 | 55555 | 13-DEC-09 | | 2 | 456 | 77777 …
176 sql  count  group-by  having 

5
เข้าร่วมสองคำสั่ง SELECT ผลลัพธ์
เป็นไปได้หรือไม่ที่จะเข้าร่วมผลลัพธ์ของSELECTข้อความสั่ง2 sql ในข้อความเดียว? ฉันมีฐานข้อมูลของงานที่แต่ละระเบียนเป็นงานแยกต่างหากพร้อมกำหนดเวลา (และ a PALTซึ่งเป็นเพียงแค่หนึ่งINTวันตั้งแต่เริ่มต้นจนถึงวันครบกำหนด Ageนอกจากนี้ยังมีINTจำนวนวันด้วย) ฉันต้องการมีตารางที่มีแต่ละคนในตารางจำนวนงานที่พวกเขามีและจำนวนLATEงานที่พวกเขามี (ถ้ามี) ฉันสามารถรับข้อมูลนี้ในตารางแยกกันได้อย่างง่ายดายเช่น: SELECT ks, COUNT(*) AS '# Tasks' FROM Table GROUP BY ks ส่งคืนข้อมูลเช่น: ks # Tasks person1 7 person2 3 แล้วฉันมี: SELECT ks, COUNT(*) AS '# Late' FROM Table WHERE Age > Palt GROUP BY ks ซึ่งผลตอบแทน: ks # Late …
174 sql  select  join  group-by 

13
วิธีจัดกลุ่มตามชั่วโมงหรือ 10 นาที
เช่นเมื่อฉันทำ SELECT [Date] FROM [FRIIB].[dbo].[ArchiveAnalog] GROUP BY [Date] ฉันจะระบุช่วงเวลากลุ่มได้อย่างไร MS SQL 2008 2nd แก้ไข ฉันกำลังพยายาม SELECT MIN([Date]) AS RecT, AVG(Value) FROM [FRIIB].[dbo].[ArchiveAnalog] GROUP BY (DATEPART(MINUTE, [Date]) / 10) ORDER BY RecT เปลี่ยน% 10 เป็น / 10 เป็นไปได้ไหมที่จะสร้างเอาต์พุตวันที่โดยไม่มีมิลลิวินาที?

5
pandas groupby เรียงลำดับภายในกลุ่ม
ฉันต้องการจัดกลุ่ม dataframe ของฉันด้วยสองคอลัมน์จากนั้นเรียงลำดับผลลัพธ์รวมภายในกลุ่ม In [167]: df Out[167]: count job source 0 2 sales A 1 4 sales B 2 6 sales C 3 3 sales D 4 7 sales E 5 5 market A 6 3 market B 7 2 market C 8 4 market D 9 1 market E …

5
วิธีเข้าถึง pandas groupby dataframe โดยใช้คีย์
ฉันจะเข้าถึง groupby dataframe ที่สอดคล้องกันในวัตถุ groupby โดยคีย์ได้อย่างไร ด้วย groupby ต่อไปนี้: rand = np.random.RandomState(1) df = pd.DataFrame({'A': ['foo', 'bar'] * 3, 'B': rand.randn(6), 'C': rand.randint(0, 20, 6)}) gb = df.groupby(['A']) ฉันสามารถย้ำผ่านมันเพื่อรับกุญแจและกลุ่ม: In [11]: for k, gp in gb: print 'key=' + str(k) print gp key=bar A B C 1 bar -0.611756 18 …

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.