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

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

16
เลือกแถวแรกในแต่ละกลุ่มจำแนกตามกลุ่ม?
เป็นชื่อแนะนำ, GROUP BYฉันต้องการที่จะเลือกแถวแรกของชุดของแต่ละแถวมีการจัดกลุ่ม โดยเฉพาะถ้าฉันมีpurchasesตารางที่มีลักษณะเช่นนี้: SELECT * FROM purchases; เอาท์พุทของฉัน: id | ลูกค้า | รวม --- + + ---------- ------ 1 | โจ | 5 2 | แซลลี่ | 3 3 | โจ | 2 4 | แซลลี่ | 1 ฉันต้องการค้นหาidการซื้อที่ใหญ่ที่สุด ( total) จากแต่ละcustomerรายการ บางสิ่งเช่นนี้ SELECT FIRST(id), customer, FIRST(total) FROM purchases …

10
จัดกลุ่มตามใน LINQ
สมมติว่าเรามีชั้นเรียนเช่น: class Person { internal int PersonID; internal string car; } ตอนนี้ฉันมีรายชื่อของชั้นนี้: List<Person> persons; ตอนนี้รายการนี้อาจมีหลายอินสแตนซ์ที่มีเหมือนกันPersonIDตัวอย่างเช่น: persons[0] = new Person { PersonID = 1, car = "Ferrari" }; persons[1] = new Person { PersonID = 1, car = "BMW" }; persons[2] = new Person { PersonID = 2, car = "Audi" …
1061 c#  linq  group-by 


14
จัดกลุ่มตามหลายคอลัมน์
ฉันจะทำอย่างไรโดย GroupBy หลายคอลัมน์ใน LINQ สิ่งที่คล้ายกับสิ่งนี้ใน SQL: SELECT * FROM <TableName> GROUP BY <Column1>,<Column2> ฉันจะแปลงให้เป็น LINQ ได้อย่างไร: QuantityBreakdown ( MaterialID int, ProductID int, Quantity float ) INSERT INTO @QuantityBreakdown (MaterialID, ProductID, Quantity) SELECT MaterialID, ProductID, SUM(Quantity) FROM @Transactions GROUP BY MaterialID, ProductID
967 c#  .net  linq  group-by  aggregate 

27
ดึงข้อมูลระเบียนสุดท้ายในแต่ละกลุ่ม - MySQL
มีตารางmessagesที่มีข้อมูลดังแสดงด้านล่าง: Id Name Other_Columns ------------------------- 1 A A_data_1 2 A A_data_2 3 A A_data_3 4 B B_data_1 5 B B_data_2 6 C C_data_1 ถ้าฉันเรียกใช้คิวselect * from messages group by nameรีฉันจะได้ผลลัพธ์ดังนี้: 1 A A_data_1 4 B B_data_1 6 C C_data_1 แบบสอบถามใดจะส่งคืนผลลัพธ์ต่อไปนี้ 3 A A_data_3 5 B B_data_2 6 C C_data_1 นั่นคือบันทึกสุดท้ายในแต่ละกลุ่มควรส่งคืน …

13
MySQL Query GROUP จำแนกตามวัน / เดือน / ปี
เป็นไปได้ไหมที่จะทำแบบสอบถามง่ายๆเพื่อนับจำนวนระเบียนที่ฉันมีในช่วงเวลาที่กำหนดเช่นปีเดือนหรือวันที่มีTIMESTAMPเขตข้อมูลเช่น: SELECT COUNT(id) FROM stats WHERE record_date.YEAR = 2009 GROUP BY record_date.YEAR หรือแม้กระทั่ง: SELECT COUNT(id) FROM stats GROUP BY record_date.YEAR, record_date.MONTH เพื่อให้ได้สถิติรายเดือน ขอบคุณ!
649 mysql  sql  date  datetime  group-by 

20
รับ 1 แถวแรกของแต่ละกลุ่ม
ฉันมีตารางที่ฉันต้องการรับรายการล่าสุดสำหรับแต่ละกลุ่ม นี่คือตาราง: DocumentStatusLogs โต๊ะ |ID| DocumentID | Status | DateCreated | | 2| 1 | S1 | 7/29/2011 | | 3| 1 | S2 | 7/30/2011 | | 6| 1 | S1 | 8/02/2011 | | 1| 2 | S1 | 7/28/2011 | | 4| 2 | S2 | 7/30/2011 …

30
วิธีที่มีประสิทธิภาพมากที่สุดในการจัดกลุ่มตามอาร์เรย์ของวัตถุ
วิธีที่มีประสิทธิภาพมากที่สุดในการจัดกลุ่มวัตถุในอาร์เรย์คืออะไร? ตัวอย่างเช่นกำหนดอาร์เรย์ของวัตถุนี้: [ { Phase: "Phase 1", Step: "Step 1", Task: "Task 1", Value: "5" }, { Phase: "Phase 1", Step: "Step 1", Task: "Task 2", Value: "10" }, { Phase: "Phase 1", Step: "Step 2", Task: "Task 1", Value: "15" }, { Phase: "Phase 1", Step: "Step 2", Task: …

16
ข้อผิดพลาดที่เกี่ยวข้องกับ only_full_group_by เมื่อดำเนินการค้นหาใน MySql
ฉันได้อัพเกรดระบบของฉันและได้ติดตั้ง MySql 5.7.9 ด้วย php สำหรับเว็บแอปพลิเคชันที่ฉันกำลังทำงานอยู่ ฉันมีคิวรีที่สร้างขึ้นแบบไดนามิกและเมื่อทำงานใน MySql เวอร์ชันเก่ามันทำงานได้ดี ตั้งแต่อัปเกรดเป็น 5.7 ฉันได้รับข้อผิดพลาดนี้: นิพจน์ # 1 ของรายการที่เลือกไม่ได้อยู่ในกลุ่มตามข้อและมีคอลัมน์ที่ไม่รวม 'support_desk.mod_users_groups.gid_id' ซึ่งไม่ได้ขึ้นอยู่กับหน้าที่ของคอลัมน์ในกลุ่มตามข้อ; สิ่งนี้เข้ากันไม่ได้กับ sql_mode = only_full_group_by หมายเหตุ: หน้าคู่มือสำหรับ MySQL 5.7 ในหัวข้อของโหมด SQL Server นี่คือแบบสอบถามที่ทำให้ฉันมีปัญหา: SELECT mod_users_groups.group_id AS 'value', group_name AS 'text' FROM mod_users_groups LEFT JOIN mod_users_data ON mod_users_groups.group_id = mod_users_data.group_id WHERE mod_users_groups.active = 1 …

7
รับสถิติสำหรับแต่ละกลุ่ม (เช่นการนับค่าเฉลี่ยเป็นต้น) โดยใช้หมีแพนด้า GroupBy?
ฉันมีกรอบข้อมูลdfและฉันใช้หลายคอลัมน์จากgroupby: df['col1','col2','col3','col4'].groupby(['col1','col2']).mean() ในวิธีข้างต้นฉันเกือบจะได้รับตาราง (data frame) ที่ฉันต้องการ สิ่งที่ขาดหายไปคือคอลัมน์เพิ่มเติมที่มีจำนวนแถวในแต่ละกลุ่ม กล่าวอีกนัยหนึ่งฉันมีความหมาย แต่ฉันก็อยากจะรู้ว่าจำนวนที่ใช้ในการรับค่าเฉลี่ย ตัวอย่างเช่นในกลุ่มแรกมี 8 ค่าและใน 10 อันดับสองและอื่น ๆ กล่าวโดยย่อ: ฉันจะรับสถิติกลุ่มอย่างชาญฉลาดสำหรับดาต้าเฟรมได้อย่างไร

2
วิธีหมุนเดตาล็อกไฟล์
สาระสำคัญคืออะไร? ฉันจะหมุนได้อย่างไร นี่คือสาระสำคัญหรือไม่? รูปแบบยาวเป็นรูปแบบกว้าง? ฉันเห็นคำถามมากมายที่ถามเกี่ยวกับตารางเดือย แม้ว่าพวกเขาไม่รู้ว่าพวกเขากำลังถามเกี่ยวกับตารางสาระสำคัญพวกเขามักจะ มันแทบเป็นไปไม่ได้ที่จะเขียนคำถามและคำตอบที่ยอมรับได้ซึ่งครอบคลุมทุกแง่มุมของการหมุนเหวี่ยง ... ... แต่ฉันจะปล่อยมันไป ปัญหาเกี่ยวกับคำถามและคำตอบที่มีอยู่ก็คือคำถามมักมุ่งเน้นไปที่ความแตกต่างที่ OP มีปัญหาในการพูดคุยเพื่อใช้คำตอบที่ดีที่มีอยู่จำนวนมาก อย่างไรก็ตามไม่มีคำตอบใดที่พยายามให้คำอธิบายที่ครอบคลุม (เพราะมันเป็นงานที่น่ากลัว) ดูตัวอย่างจากการค้นหา googleของฉัน วิธีหมุนเดตาไฟล์ใน Pandas ได้อย่างไร คำถามและคำตอบที่ดี แต่คำตอบเพียงตอบคำถามเฉพาะพร้อมคำอธิบายเล็กน้อย pandas pivot table ไปยัง data frame ในคำถามนี้ OP เกี่ยวข้องกับผลลัพธ์ของ pivot คือลักษณะของคอลัมน์ OP ต้องการให้ดูเหมือน R นี่ไม่ได้มีประโยชน์มากสำหรับผู้ใช้แพนด้า pandas pivoting dataframe, แถวที่ซ้ำกัน อีกคำถามที่ดี แต่คำตอบนั้นเน้นที่วิธีหนึ่งคือ pd.DataFrame.pivot ดังนั้นเมื่อใดก็ตามที่มีคนค้นหาpivotพวกเขาจะได้ผลลัพธ์เป็นระยะ ๆ ซึ่งไม่น่าจะตอบคำถามเฉพาะของพวกเขา ติดตั้ง คุณอาจสังเกตเห็นว่าฉันตั้งชื่อคอลัมน์ของฉันและค่าคอลัมน์ที่เกี่ยวข้องอย่างชัดเจนเพื่อให้สอดคล้องกับวิธีที่ฉันจะ pivot …

14
วิธีการเชื่อมสตริงของฟิลด์สตริงในกลุ่ม PostgreSQL โดยการสืบค้น
ฉันกำลังมองหาวิธีที่จะเชื่อมโยงสตริงของเขตข้อมูลภายในกลุ่มโดยใช้แบบสอบถาม ตัวอย่างเช่นฉันมีตาราง: ID COMPANY_ID EMPLOYEE 1 1 Anna 2 1 Bill 3 2 Carol 4 2 Dave และฉันต้องการจัดกลุ่มโดย company_id เพื่อให้ได้สิ่งที่ชอบ: COMPANY_ID EMPLOYEE 1 Anna, Bill 2 Carol, Dave มีฟังก์ชั่นในตัวใน mySQL เพื่อทำgroup_concatนี้

9
วิธีรับจำนวนการนับด้วยแบบสอบถาม SQL หนึ่งรายการ
ฉันสงสัยว่าจะเขียนคำค้นหานี้อย่างไร ฉันรู้ว่าไวยากรณ์ที่แท้จริงนี้เป็นของปลอม แต่มันจะช่วยให้คุณเข้าใจสิ่งที่ฉันต้องการ ฉันต้องการมันในรูปแบบนี้เพราะมันเป็นส่วนหนึ่งของแบบสอบถามที่ใหญ่กว่ามาก SELECT distributor_id, COUNT(*) AS TOTAL, COUNT(*) WHERE level = 'exec', COUNT(*) WHERE level = 'personal' ฉันต้องการสิ่งนี้ทั้งหมดกลับมาในแบบสอบถามเดียว นอกจากนี้ต้องอยู่ในแถวเดียวดังนั้นสิ่งต่อไปนี้จะไม่ทำงาน: 'SELECT distributor_id, COUNT(*) GROUP BY distributor_id'
316 mysql  sql  join  count  group-by 

26
มีความแตกต่างระหว่าง GROUP BY และ DISTINCT หรือไม่
ฉันเรียนรู้บางอย่างเกี่ยวกับ SQL ในวันอื่น ๆ : SELECT c FROM myTbl GROUP BY C มีผลลัพธ์เช่นเดียวกับ: SELECT DISTINCT C FROM myTbl สิ่งที่ฉันอยากรู้มีอะไรแตกต่างกันในวิธีที่โปรแกรมเอ็นจิน SQL ประมวลผลคำสั่งหรือสิ่งนั้นเป็นสิ่งเดียวกันจริง ๆ หรือไม่? ฉันชอบไวยากรณ์ที่แตกต่างโดยส่วนตัว แต่ฉันแน่ใจว่ามันเป็นนิสัยมากกว่าสิ่งอื่นใด แก้ไข: นี่ไม่ใช่คำถามเกี่ยวกับมวลรวม การใช้GROUP BYฟังก์ชั่นรวมกับเป็นที่เข้าใจกัน
310 sql  group-by  distinct 

8
นับแพนด้า (แตกต่างกัน) เทียบเท่า
ฉันใช้แพนด้าเป็นตัวแทนที่ฐานข้อมูลเนื่องจากมีหลายฐานข้อมูล (oracle, mssql และอื่น ๆ ) และฉันไม่สามารถสร้างลำดับของคำสั่งให้เทียบเท่ากับ SQL ได้ ฉันมีตารางที่โหลดใน DataFrame ด้วยบางคอลัมน์: YEARMONTH, CLIENTCODE, SIZE, .... etc etc ใน SQL เพื่อนับจำนวนลูกค้าที่แตกต่างกันต่อปีจะเป็น: SELECT count(distinct CLIENTCODE) FROM table GROUP BY YEARMONTH; และผลก็จะเป็น 201301 5000 201302 13245 ฉันจะทำเช่นนั้นในหมีแพนด้าได้อย่างไร

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