बहुत कम विकल्प मुझे डर लग रहा है।
आपको हमेशा टेबल को दो बार छूना होता है, चाहे COUNT, EXISTS पहले, EXISTs in UNION, TOP क्लॉज आदि
select
id, category
from mytable
where category = @category
union all --edit, of course it's quicker
select
0, ''
where NOT EXISTS (SELECT * FROM mytable where category = @category)
एक EXISTS समाधान COUNT से बेहतर है क्योंकि यह एक पंक्ति मिलने पर रुक जाएगा। COUNT वास्तव में उनकी गणना करने के लिए सभी पंक्तियों को पार करेगा