PDA

View Full Version : بازگردادن همه سطر ها



darkenerboy
دوشنبه 26 اسفند 1392, 22:43 عصر
سلام و خسته نباشید
چون نمیدونستم چجوری سوالم رو بپرسم با شکل توضیح میدم
نکته : b کلید خارجی است.
ممنون میشم راهنماییم کنید
کوری من
select b,count(*) from tbl_b_c group by b

نتیجه ای که بدست میارم



count

b



2
1
1


3
2
2


5
3
3


7
5
4









نتیجه ای که میخوام



count

b



2

1
1


3
2
2


5
3
3


0
4
4


7
5
5


0
6
6

Rejnev
چهارشنبه 28 اسفند 1392, 16:15 عصر
select p.id,
(select COUNT(*) from tbl_child where parent_id=p.id) as [count]
from tbl_parent p
از جدول اصلی سلکت گرفتم و برای این که تعداد استفاده از اون رو توی جدول ثانویه محاسبه کنم از یک سلکت درونی استفاده کردم که البته این روش بشدت کنده و برای واکشی بیش از یک رکورد مناسب نیست!
اگه راه سریعتر خواستین بگین تا بیشتر فکر کنم و بذارم.

darkenerboy
چهارشنبه 28 اسفند 1392, 20:26 عصر
سلام
کوری مورد نظر رو با یک کوری که نتیجه معکوس بده رو union میکنم
بنظرتون کار درستیه ؟

Rejnev
چهارشنبه 28 اسفند 1392, 20:56 عصر
نه مالی نیست
اینم جواب:


select
p.id,COUNT(c.parent_id) as [count]
from
tbl_Parent p
left outer join
tbl_child c
on p.id=c.parent_id
group by p.id

N_D
جمعه 01 فروردین 1393, 12:24 عصر
نمونه اسکریپت جدولت رو بنویس.. چون ردیف 6 معلوم نیست از کجا داره میاد.. تو همون جدوله یا نتیجه left join با جدول دیگه هست..

darkenerboy
جمعه 01 فروردین 1393, 23:24 عصر
نه مالی نیست
اینم جواب:


select
p.id,COUNT(c.parent_id) as [count]
from
tbl_Parent p
left outer join
tbl_child c
on p.id=c.parent_id
group by p.id


با تشکر از توجه شما
دقیقا مشابه این کد پیاده سازی و اجرا شد
کوری مقادیری که صفر هستن رو یک بر میگردونه

Rejnev
شنبه 02 فروردین 1393, 14:25 عصر
این کوئری که من نوشتم این جواب رو برمیگردونه:
تمامی رکوردهای جدول والد و تعداد استفاده از اون توی جدول فرزند
همین مدنظر شماست؟