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

एसक्यूएल परिकलित कॉलम के न्यूनतम मूल्य के आधार पर पूरी पंक्ति प्राप्त करें

नीचे दी गई क्वेरी काम करती है, लेकिन कॉलम स्थिति को status_code से बदलने पर विचार करना बेहतर है कोड के साथ, और एक अलग तालिका है status(status_code,description) {denormalise}

और अनुक्रमण (term_id,statUs_code )।

इसके द्वारा, हम सिर्फ स्वयं शामिल हो सकते हैं। इसके बजाय इस तरह एक दृश्य बनाना।

SELECT * FROM
(SELECT *,(CASE sample.status
                         WHEN 'Arrived' THEN 1
                         WHEN 'Active' THEN 2
                         WHEN 'Pending Approval' THEN 3
                         WHEN 'Pending Confirmation' THEN 4
                         WHEN 'Pending Manual' THEN 5
                         WHEN 'Denied' THEN 6
                         WHEN 'Canceled' THEN 7
                END) AS status_code FROM SAMPLE
  WHERE sample.term_id = 29
) my_view1,
(SELECT BED_ID,MIN(CASE sample.status
                         WHEN 'Arrived' THEN 1
                         WHEN 'Active' THEN 2
                         WHEN 'Pending Approval' THEN 3
                         WHEN 'Pending Confirmation' THEN 4
                         WHEN 'Pending Manual' THEN 5
                         WHEN 'Denied' THEN 6
                         WHEN 'Canceled' THEN 7
                END) AS status_code FROM SAMPLE
 WHERE sample.term_id = 29
 GROUP BY BED_ID
) my_view2
WHERE my_view1.bed_id = my_view2.bed_id
 AND  my_view1.status_code = my_view2.status_code



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. आईफोन ऐप (आईओएस एसडीके) को php/MySQL बैकएंड से कनेक्ट करने का सबसे अच्छा तरीका क्या है?

  2. MySQL OpenCarts डेटाबेस से डुप्लिकेट पंक्तियों का चयन करें

  3. नामित प्रश्नों में हाइबरनेट त्रुटियां

  4. एन्क्रिप्शन कुंजियों को संग्रहीत करने का सुरक्षित तरीका - PHP

  5. PHP:ऑप्टग्रुप के साथ डायनामिक ड्रॉप डाउन