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

sqlalchemy func.group_concat và thứ tự ngẫu nhiên của dữ liệu

Kết quả SQL là (nhiều) tập hợp và như vậy không có thứ tự, trừ khi bạn xác định rõ ràng một tập hợp. Điều này áp dụng cho các hàng nhóm do GROUP BY tạo cũng; không có thứ tự trong các nhóm và do đó các tổng hợp nhận giá trị theo bất kỳ thứ tự nào mà truy vấn hiện tại tùy thuộc vào kế hoạch, bố cục vật lý, lập lịch, v.v. xảy ra để tạo ra. Giải pháp là xác định rõ ràng đặt hàng :

func.group_concat(t.name.op("ORDER BY")(t.name))

Điều này sử dụng hàm toán tử chung để tạo ra cú pháp SQL bắt buộc. SQLAlchemy cung cấp tổng hợp_order_by trợ giúp cho cùng một cú pháp, nhưng nó chỉ được cung cấp cho phương ngữ Postgresql.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Làm cách nào để nhập tệp dữ liệu này vào bảng Mysql

  2. Cách tốt để không chuẩn hóa cơ sở dữ liệu mysql là gì?

  3. Đảo ngược hiệu ứng của `mysqli_real_escape_string`

  4. Điều kiện MySQL từ nhiều hàng

  5. MySQL:Curdate () so với Now ()