Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Kết hợp nhiều hàng con thành một hàng MYSQL

Cách dễ nhất là sử dụng hàm nhóm GROUP_CONCAT tại đây ..

select
  ordered_item.id as `Id`,
  ordered_item.Item_Name as `ItemName`,
  GROUP_CONCAT(Ordered_Options.Value) as `Options`
from
  ordered_item,
  ordered_options
where
  ordered_item.id=ordered_options.ordered_item_id
group by
  ordered_item.id

Cái nào sẽ xuất ra:

Id              ItemName       Options

1               Pizza          Pepperoni,Extra Cheese

2               Stromboli      Extra Cheese

Bằng cách đó, bạn có thể có nhiều tùy chọn tùy thích mà không cần phải sửa đổi truy vấn của mình.

À, nếu bạn thấy kết quả của mình bị cắt xén, bạn có thể tăng giới hạn kích thước của GROUP_CONCAT như sau:

SET SESSION group_concat_max_len = 8192;


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Tạo bảng trong MySQL

  2. Đá quý mysql2 được biên dịch cho thư viện máy khách mysql sai

  3. Cách tìm hàng thứ n trong MySQL

  4. cài đặt gem:Không thể tạo tiện ích mở rộng gốc gem (không thể tìm thấy tệp tiêu đề)

  5. Nối ba bảng bằng MySQL