কম্পিউটার টিউটোরিয়াল

MySQL-এ GROUP BY, WHERE এবং HAVING COUNT > 1 ব্যবহার করা

GROUP BY ক্লজ WHERE শর্ত এবং HAVING COUNT(*) > 1 শর্ত সহ ব্যবহার করে ডুপ্লিকেট বা পুনরাবৃত্ত রেকর্ড খুঁজে বের করা যায়।

উদাহরণ

টেবিল তৈরি (GroupByWithWhereClause) এবং ১৯ রো ইনসার্ট করি (IsDeleted, MoneyStatus, UserId কলাম সহ)।

কোয়েরি: IsDeleted=0 এবং MoneyStatus='done' শর্তে, UserId-র প্রথম ৩ ডিজিট অনুযায়ী গ্রুপ করে, যেগুলোর কাউন্ট ১-এর বেশি।

mysql> SELECT * FROM GroupByWithWhereClause
    -> WHERE IsDeleted= 0 AND MoneyStatus= 'done'
    -> GROUP BY SUBSTR(UserId,1,3)
    -> HAVING COUNT(*) > 1
    -> ORDER BY Id DESC;

ফলাফল (UserId ১০১, ১০৩, ১০৬-র লেটেস্ট রো):

+----+-----------+-------------+--------+
| Id | IsDeleted | MoneyStatus | UserId |
+----+-----------+-------------+--------+
| 18 |         0 | done        |    106 |
|  8 |         0 | done        |    103 |
|  2 |         0 | done        |    101 |
+----+-----------+-------------+--------+
  1. MySQL WHERE ক্লজে একাধিক মান ফেচ করা

  2. MySQL VIEW-এ WHERE ক্লজ ব্যবহার করা

  3. MySQL-এ WHERE ক্লজে একাধিক শর্ত দিয়ে আপডেট করা

  4. MySQL WHERE ক্লজে ডিউ ডেট এবং কারেন্ট ডেট রেকর্ড চেক করার শর্ত