PDA

View Full Version : روش سریع برای یافتن آنکه table شامل رکوردی است ؟



sasan_vm
چهارشنبه 07 آذر 1386, 17:44 عصر
سلام
به غیر از این روش راه دیگری هست:


select count (*) as...


این کد روی table هایی با حجم بالا خیلی کند هست.

متشکرم

حمیدرضاصادقیان
چهارشنبه 07 آذر 1386, 22:50 عصر
دوست عزیز میتونی برای اینکه ببینی جدولی خالی هست یا نه اول اینکه از جدول sysindexes میتونی بوسیله ستون rows تعداد ردیفهای هر جدول رو پیدا کنی. دوم اینکه روشی که منم استفاده میکنم اینه که


select top 1 code from table1

با این روش فقط یک رکورد برگردونده میشه .سعی هم بکن روی فیلدی که کلید اصلی داره اینکارو بکن که مقدار Null نداشته باشه.اگه ردیفی برگردونده بشه یعنی مقدار داره اگر نه که یعنی مقداری نداره.من از این روش استفاده میکنم سرعتش هم خیلی عالیه هیچ مشکلی هم نداره.

AminSobati
چهارشنبه 07 آذر 1386, 23:41 عصر
یک ایندکس روی کوچکترین فیلد این جدول بسازین، میتونه به سرعت Query شما کمک کنه. کوچکترین فیلد منظورم از نظر جنس هستش. مثلا int چهار بایت اشغال میکنه ولی اگر فرضا فیلد smallint یا bit دارین در جدول، اینها بهتره