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

GROUP BY के लिए SQL क्वेरी, LEAST, COALESCE की शर्तों से मेल खाने वाले समूह लौटाएं

सबसे पहले tour_id प्राप्त करें s जो शर्तों से मेल खाते हैं:

SELECT Tour_ID
FROM myTable 
WHERE organisation LIKE 'Ikea'
GROUP BY Tour_ID
HAVING LEAST(COALESCE(MIN(A), '2019-01-01'), COALESCE(MIN(B), '2019-01-01'), COALESCE(MIN(C), '2019-01-01'), COALESCE(MIN(D), '2019-01-01')) >= '2018-05-01' AND
       LEAST(COALESCE(MIN(A), '2019-01-01'), COALESCE(MIN(B), '2019-01-01'), COALESCE(MIN(C), '2019-01-01'), COALESCE(MIN(D), '2019-01-01')) < '2018-06-01';

फिर मूल पंक्तियों को प्राप्त करने के लिए इसे एक प्रश्न में डालें। ये रहा एक तरीका:

select t.*
from mytable t join
     (SELECT organisation, Tour_ID
      FROM myTable 
      WHERE organisation LIKE 'Ikea'
      GROUP BY organisation, Tour_ID
      HAVING LEAST(COALESCE(MIN(A), '2019-01-01'), COALESCE(MIN(B), '2019-01-01'), COALESCE(MIN(C), '2019-01-01'), COALESCE(MIN(D), '2019-01-01')) >= '2018-05-01' AND
             LEAST(COALESCE(MIN(A), '2019-01-01'), COALESCE(MIN(B), '2019-01-01'), COALESCE(MIN(C), '2019-01-01'), COALESCE(MIN(D), '2019-01-01')) < '2018-06-01'
     ) tt
     ON tt.tour_id = t.tour_id AND
        tt.organisation = t.organisation;



  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. अस्थायी तालिका बनाए बिना डुप्लिकेट रिकॉर्ड हटाएं

  3. MySQL अपडेट क्वेरी - क्या रेस कंडीशन और रो लॉकिंग पर 'कहां' कंडीशन का सम्मान किया जाएगा? (php, PDO, MySQL, InnoDB)

  4. NameError:mysql में परिवर्तन सेट करने के बाद नाम '_mysql' परिभाषित नहीं किया गया है

  5. UNION ALL के साथ संयुक्त तालिकाओं के लिए दृश्य का MySQL प्रदर्शन