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

Tham gia - các trường trong bảng 2 ghi đè các trường trong bảng 1

Sử dụng LEFT JOIN cùng với IFNULL để kiểm tra các ghi đè trước và dự phòng nếu không có ghi đè nào tồn tại.

SELECT p.partnum, 
    IFNULL(d.price, p.price) AS price,
    IFNULL(d.installtime, p.installtime) AS installtime
FROM products p 
  LEFT JOIN overrides d ON d.dealerID = 123
      AND p.partnum = d.partnum  

Lưu ý:Tôi đã chuyển WHERE dealerID = 123 vào vị từ tham gia, để truy xuất tất cả sản phẩm và các ghi đè cho một đại lý cụ thể.



  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ỗi laravel classloader.php không thể mở luồng:Không có tệp hoặc thư mục nào như vậy

  2. Nhận mức lương cao thứ hai cho mỗi người trong mysql

  3. Kết quả tìm kiếm từ khóa và xếp hạng

  4. Truy vấn MySQL để tìm bạn và số lượng bạn chung

  5. truy vấn mysql để chọn tất cả các hàng của tháng hiện tại?