Hướng dẫn mysql combine multiple rows into multiple columns - mysql kết hợp nhiều hàng thành nhiều cột
Nếu tôi có bảng MySQL trông giống như thế này: ví dụ 2014000 là bút sản phẩm, có bốn loại ABCD với giá khác nhau. Và 2014001 là một điện thoại prodCT khác, cũng có ba loại EFG với giá khác nhau. Bây giờ tôi muốn có được một sản phẩm một dòng với tên và giá trị. Show
Kết quả tôn trọng :
Tạo bảng T (ID int, mã int, tên char (1), varchar giá trị (10)); Chèn vào các giá trị T (1.2014000, 'A', '10'), (2.2014000, 'B', '9'), (3.2014000, 'C', '11'), (4.2014000 . ); ----- Theo sau chỉ cho hai hàng, nếu có nhiều hơn bốn hàng, làm thế nào để làm điều đó? Tôi đang cố gắng thực hiện một truy vấn thủ công cho bảng postmeta WordPress sẽ kết hợp hai loại postmeta thành một với nhiều cột của post_id. Đây là cấu trúc của bảng:
Đây là kết quả tôi đang cố gắng đạt được:
Rick James 71.2k4 Huy hiệu vàng40 Huy hiệu bạc98 Huy hiệu đồng4 gold badges40 silver badges98 bronze badges Hỏi ngày 25 tháng 4 năm 2019 lúc 15:52Apr 25, 2019 at 15:52
hoặc
PS. Truy vấn đầu tiên bỏ qua 6, nếu nó không có ai (bất kỳ) phím meta, truy vấn thứ hai cho null cho trường đầu ra trong trường hợp đó.Đã trả lời ngày 25 tháng 4 năm 2019 lúc 18:07Apr 25, 2019 at 18:07
AkinaakinaAkina 17.9k2 Huy hiệu vàng12 Huy hiệu bạc19 Huy hiệu đồng2 gold badges12 silver badges19 bronze badges Đôi khi bạn có thể cần kết hợp nhiều hàng vào một cột. Tại đây, cách kết hợp nhiều hàng vào một cột trong hàm Group_concat. Bạn cũng có thể sử dụng nó để kết hợp các hàng vào chuỗi hoặc nhận nhiều dữ liệu hàng trong một hàng trong MySQL. Dưới đây là các bước để nối nhiều hàng vào một cột trong MySQL. Hãy nói rằng bạn có doanh số bán bảng sau (Sales_rep, Sale) mysql> create table sales(sales_rep varchar(255),sale int); mysql> insert into sales(sales_rep, sale) values('Albert',10),('Bob',23), ('Chris',20),('Dave',35); mysql> select * from sales; +-----------+------+ | sales_rep | sale | +-----------+------+ | Albert | 10 | | Bob | 23 | | Chris | 20 | | Dave | 35 | +-----------+------+ Tiền thưởng đọc: & nbsp; Cách tính tổng số chạy trong mysql Hãy nói rằng bạn muốn báo cáo tất cả các đại diện bán hàng có bán hàng> 10 với truy vấn sau. mysql> select sales_rep from sales where sale>10; Bạn sẽ nhận được đầu ra sau +-----------+ | sales_rep | +-----------+ | Bob | | Chris | | Dave | +-----------+ Tuy nhiên, chúng tôi muốn các tên sales_rep có mặt trong một dòng duy nhất. 0Trong trường hợp này, chúng tôi sử dụng chức năng nhóm_concat để nối nhiều hàng vào một cột. 1Group_concat kết hợp tất cả các giá trị không null trong một nhóm và trả về chúng dưới dạng một chuỗi. Nếu bạn muốn tránh trùng lặp, bạn cũng có thể thêm khác biệt trong truy vấn của mình. Hãy để nói rằng bạn có bảng sau. 2Trong bảng trên, sản phẩm cột chứa các giá trị trùng lặp. Vì vậy, chúng tôi sử dụng từ khóa riêng biệt để chỉ chọn các giá trị duy nhất. 3Tiền thưởng đọc: & nbsp; cách thêm tổng hàng trong mysql Bạn cũng có thể sử dụng nhóm theo chức năng để kết hợp các giá trị hàng cho mỗi nhóm. Đây là một ví dụ. Hãy để nói rằng bạn có bảng sau. 4Ở đây, một truy vấn nơi chúng tôi kết hợp tên đại diện cho từng sản phẩm, sử dụng nhóm theo mệnh đề. 5Sau khi bạn kết hợp nhiều hàng vào một cột, bạn có thể sử dụng một công cụ báo cáo để vẽ kết quả trong bảng và chia sẻ chúng với nhóm của bạn. Ở đây, một ví dụ về một bảng được tạo bằng UBIQ. Nhân tiện, nếu bạn muốn tạo biểu đồ, bảng điều khiển & báo cáo từ cơ sở dữ liệu MySQL, bạn có thể thử UBIQ. Chúng tôi cung cấp một bản dùng thử miễn phí 14 ngày. Bài viết liên quan:
Làm cách nào để kết hợp nhiều hàng vào một cột trong SQL?Bạn có thể nối các hàng vào chuỗi đơn bằng phương pháp hợp tác. Phương pháp hợp tác này có thể được sử dụng trong SQL Server phiên bản 2008 trở lên. Tất cả bạn phải làm là, khai báo một biến varchar và bên trong hợp tác, kết nối biến với dấu phẩy và cột, sau đó gán hợp tác cho biến.using COALESCE method. This COALESCE method can be used in SQL Server version 2008 and higher. All you have to do is, declare a varchar variable and inside the coalesce, concat the variable with comma and the column, then assign the COALESCE to the variable.
Làm cách nào để kết hợp nhiều hàng thành một trong MySQL?Hàm group_concat () trong mysql được sử dụng để kết hợp dữ liệu từ nhiều hàng vào một trường. Đây là hàm tổng hợp (nhóm theo) trả về giá trị chuỗi, nếu nhóm chứa ít nhất một giá trị không null. Nếu không, nó trả lại null.GROUP_CONCAT() function in MySQL is used to concatenate data from multiple rows into one field. This is an aggregate (GROUP BY) function which returns a String value, if the group contains at least one non-NULL value. Otherwise, it returns NULL.
Làm cách nào để kết hợp nhiều hàng dữ liệu thành một hàng?Để hợp nhất hai hoặc nhiều hàng thành một, đây là những gì bạn cần làm: chọn phạm vi của các ô mà bạn muốn hợp nhất các hàng.Chuyển đến tab Dữ liệu ABLEBITS> Hợp nhất nhóm, nhấp vào mũi tên Merge Cell, sau đó nhấp vào Hợp nhất hàng thành một.Go to the Ablebits Data tab > Merge group, click the Merge Cells arrow, and then click Merge Rows into One.
Làm cách nào để kết hợp nhiều cột thành một trong MySQL?Liên kết.Hàm này được sử dụng để kết hợp nhiều cột hoặc chuỗi thành một cột..... Concat_ws.Hàm Concat_ws () không chỉ thêm nhiều giá trị chuỗi và làm cho chúng trở thành một giá trị chuỗi đơn..... Sử dụng chúng trong mệnh đề nơi.Bạn có thể sử dụng cả hai trong mệnh đề nơi lựa chọn dựa trên điều kiện..... Conclusion.. |