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

chọn một giá trị nếu nó tồn tại, một giá trị khác nếu không

Một cách tiếp cận là rời nối hai lần tới catalog_product_entity_text. Một lần cho ID 0 và một lần nữa cho ID 3, sau đó thực hiện một THAN trong lựa chọn của bạn

SELECT
..
 COALESCE(`short_description_id`.`value` , `short_description_id_DEFAULT`.`value`) AS `short_description`
..
FROM 
...

     LEFT JOIN `catalog_product_entity_text` AS `short_description_id` 
     ON p2c.product_id = short_description_id.entity_id 
         AND short_description_id.attribute_id = 62
         AND (short_description_id.store_id = 3)

     LEFT JOIN `catalog_product_entity_text` AS `short_description_id_DEFAULT` 
     ON p2c.product_id = short_description_id.entity_id 
         AND short_description_id.attribute_id = 62
         AND (short_description_id.store_id = 0) 



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. mysql kết hợp hai truy vấn thành một truy vấn

  2. Làm thế nào để mysql sắp xếp các hàng có cùng giá trị?

  3. PHP và Mysql cực kỳ cơ bản

  4. Tham gia bảng với điều kiện chuỗi con

  5. Cách đặt thứ tự cột của khóa chính tổng hợp bằng JPA / Hibernate