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

Làm cách nào để kết hợp kết quả của hai truy vấn với thứ tự?

Bạn có thể sử dụng UNION ALL để lấy các hàng từ cả hai bảng:

SELECT id, article, author, tag, date FROM table1 WHERE tag = '1'
UNION ALL
SELECT id, article, author, tag, date FROM table2 WHERE tag = '3'
ORDER BY date

Bạn cũng có thể muốn xem xét cơ cấu lại cơ sở dữ liệu của mình để thay vì sử dụng hai bảng, bạn chỉ sử dụng một bảng duy nhất với một trường để phân biệt loại của mỗi hàng. Sau đó, truy vấn có thể đơn giản hóa thành:

SELECT id, article, author, tag, date
FROM yourtable
WHERE (tag, type) IN (('1','type1'), ('3','type2'))
ORDER BY date


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Một cột cụ thể không được chèn khi lưu bản ghi

  2. lỗi trong mã sql của tôi ở đâu?

  3. Máy chủ MySQL trên MAMP-Windows sẽ không khởi động

  4. Quyền truy cập vào vùng chứa mysql từ vùng chứa khác

  5. Truy vấn Mysql để chuyển đổi động các hàng thành cột trên cơ sở hai cột