Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

MySQL में नेस्टेड केस स्टेटमेंट

आप एक THEN . खो रहे हैं आपके पहले CASE . में कथन। (क्षमा करें, मुझे तालिका उपनाम जोड़ना पड़ा )

SELECT sc.session_id
    , sc.product_id
    , sc.product_qty
    , sc.product_option
    , p.product_title
    , p.product_price
    , p.product_sale_price_status
    , p.product_sale_price
    , po.option_text
    , po.option_upcharge
    , CASE
        WHEN (p.product_sale_price_status = 'Y')
        THEN <-- add this
            CASE
            WHEN (po.option_upcharge IS NOT NULL)
                THEN (sc.product_qty * (p.product_sale_price + po.option_upcharge)) 
                ELSE (sc.product_qty * p.product_sale_price)    
            END
        ELSE
            CASE
            WHEN (po.option_upchage IS NOT NULL)
                THEN (sc.product_qty * (p.product_price + po.option_upcharge))
                ELSE (sc.product_qty * p.product_price)
            END
        END AS product_total
FROM tblshopping_cart sc
INNER JOIN tblproducts p
    ON sc.product_id = p.product_id
LEFT JOIN tblproduct_options po
    ON sc.product_option = po.option_product_id
ORDER BY sc.product_qty ASC


  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, एक क्वेरी के साथ कई टेबल अपडेट करें

  2. mysql -> tbl में डालें (किसी अन्य तालिका से चुनें) और कुछ डिफ़ॉल्ट मान

  3. mysql - अन्य पंक्तियों के आधार पर अद्यतन पंक्ति

  4. MYSQL में SUM समस्या वाली तालिकाओं में शामिल हों

  5. django चरित्र MySQL अजीबता के साथ सेट है