উত্তর:
এটা চেষ্টা কর;
select gid
from `gd`
group by gid
having count(*) > 10
order by lastupdated desc
AND ((stock = 1 OR quantity > 0) OR (COUNT(v.id) > 0)
HAVING variations > 0 OR (stock = 1 OR quantity > 0)
আপনি যা করার চেষ্টা করছেন সে সম্পর্কে আমি নিশ্চিত নই ... সম্ভবত এমন কিছু
SELECT gid, COUNT(*) AS num FROM gd GROUP BY gid HAVING num > 10 ORDER BY lastupdated DESC
num
। পরিষ্কার সিনট্যাক্সের জন্য যাইহোক +1 (আমার সেটআপ হতে পারে, বা এমএসএস ... আহ ভাল)।
SELECT COUNT(*)
FROM `gd`
GROUP BY gid
HAVING COUNT(gid) > 10
ORDER BY lastupdated DESC;
সম্পাদনা করুন (আপনি যদি কেবল গিডগুলি চান):
SELECT MIN(gid)
FROM `gd`
GROUP BY gid
HAVING COUNT(gid) > 10
ORDER BY lastupdated DESC
অনুচ্ছেদ ব্যতিরেকে কেবল একাডেমিক সংস্করণ:
select *
from (
select gid, count(*) as tmpcount from gd group by gid
) as tmp
where tmpcount > 10;
A WHERE ধারাটিতে মোট ফাংশন (উদাঃ COUNT, MAX, ইত্যাদি) থাকতে পারে না। অতএব আমরা পরিবর্তে HAVING ধারাটি ব্যবহার করি। সুতরাং পুরো ক্যোয়ারী এর সাথে একই রকম হবে:
SELECT column_name, aggregate_function(column_name)
FROM table_name
WHERE column_name operator value
GROUP BY column_name
HAVING aggregate_function(column_name) operator value;
- আধঘন্টা রেকর্ড হারিয়ে যাওয়া আবহাওয়া স্টেশনগুলির সন্ধান করা
SELECT stationid
FROM weather_data
WHERE `Timestamp` LIKE '2011-11-15 %' AND
stationid IN (SELECT `ID` FROM `weather_stations`)
GROUP BY stationid
HAVING COUNT(*) != 48;
- ইয়াপিস্কানের পরিবর্তনের সাথে একটি যেখানে .. ইন .. নির্বাচন করুন
আমি তোমাকে যোগ করতে পারবেন না মনে count()
সঙ্গে where
। এখন দেখুন কেন ....
where
যেমন হয় না having
,having
মানে আপনি গ্রুপ এবং গণনার একই কাজ করে বা কাজ করছেন, এটি পুরো গোষ্ঠীর সাথেও কাজ করছে,
এখন এটি পুরো গোষ্ঠী হিসাবে কীভাবে কাজ করছে তা গণনা করুন
একটি টেবিল তৈরি করুন এবং কিছু আইডি লিখুন এবং তারপরে ব্যবহার করুন:
select count(*) from table_name
আপনি মোট মানগুলি পেয়ে যাবেন মানে এটি কোনও গোষ্ঠীকে নির্দেশ করছে! এর where
সাথে যুক্ত হয় count()
;
COUNT (*) কেবলমাত্র হাওয়িংয়ের সাথে ব্যবহার করা যেতে পারে এবং গ্রুপ বাই স্টেটমেন্টের পরে অবশ্যই ব্যবহার করা উচিত দয়া করে নিম্নলিখিত উদাহরণটি সন্ধান করুন:
SELECT COUNT(*), M_Director.PID FROM Movie
INNER JOIN M_Director ON Movie.MID = M_Director.MID
GROUP BY M_Director.PID
HAVING COUNT(*) > 10
ORDER BY COUNT(*) ASC