PDA

View Full Version : خیلی فوری هست (مشکل با join)



ealireza
دوشنبه 24 بهمن 1384, 23:39 عصر
سلام
شرمنده خیلی فوری سوالم
من نیاز به یک Join دارم بطوری که

ابتدا تعداد رکورد های TABLE1 با شرط اینکه Clumn5=2 شمرده بشه بعد عدد Cloumn1 که بصورت INTهست رو برگردونه که ما در Table2 بتونم اونو با ID برابر کنیم

حالا میخوام بدونم این Count باید کجا قرار بگره:گیج:


select b.Cloumn1,a.id,a.date from Table1 b INNER JOIN Table2 a on a.id = b.Cloumn1 where b.Clumn5=2



مرسی

Elham_gh
دوشنبه 24 بهمن 1384, 23:47 عصر
SELECT COUNT(*)
FROM (select b.Cloumn1,a.id,a.date
from Table1 b INNER JOIN Table2 a on a.id = b.Cloumn1 )

mehranFX
دوشنبه 24 بهمن 1384, 23:52 عصر
سلام
شرمنده خیلی فوری سوالم
من نیاز به یک Join دارم بطوری که

ابتدا تعداد رکورد های TABLE1 با شرط اینکه Clumn5=2 شمرده بشه بعد عدد Cloumn1 که بصورت INTهست رو برگردونه که ما در Table2 بتونم اونو با ID برابر کنیم

حالا میخوام بدونم این Count باید کجا قرار بگره:گیج:


select b.Cloumn1,a.id,a.date from Table1 b INNER JOIN Table2 a on a.id = b.Cloumn1 where b.Clumn5=2


مرسی

select Count(b.Cloumn1),a.id,a.date from Table1 b
INNER JOIN Table2 a on a.id = b.Cloumn1 where b.Clumn5=2
Group By a.id,a.date

ealireza
سه شنبه 25 بهمن 1384, 12:08 عصر
mehranFX عزیز دستت درد نکنه
واقعا کدی که دادی خیلی کمکم کرد

مرسی

ealireza
سه شنبه 25 بهمن 1384, 15:42 عصر
آگه میشه بگید که اگه بخوام بصورت زیر در بیارم باید چکار کنم..


Select * From (Select top 19 * From (
select Count(b.Cloumn1),a.id,a.date from Table1 b
INNER JOIN Table2 a on a.id = b.Cloumn1 where b.Clumn5=2
Group By a.id,a.date
order by a.id desc


) as t1 order by id asc) as t2 order by id desc

اگه میشه بگید چطوری این کارو کنم
چون با این الگوریتم برنامم رو صفحه بندی کردم

mehranFX
سه شنبه 25 بهمن 1384, 15:57 عصر
آگه میشه بگید که اگه بخوام بصورت زیر در بیارم باید چکار کنم..


Select * From (Select top 19 * From (
select Count(b.Cloumn1),a.id,a.date from Table1 b
INNER JOIN Table2 a on a.id = b.Cloumn1 where b.Clumn5=2
Group By a.id,a.date
order by a.id desc


) as t1 order by id asc) as t2 order by id desc

اگه میشه بگید چطوری این کارو کنم
چون با این الگوریتم برنامم رو صفحه بندی کردم
اینجوری رو امتحان کن :


select top 19 Count(b.Cloumn1),a.id,a.date from Table1 b
INNER JOIN Table2 a on a.id = b.Cloumn1 where b.Clumn5=2
Group By a.id,a.date
order by a.id desc
اگه دقیق تر بگی می خوای چی کار کنی بهتر میتونم راهنمایی ات کنم!!!

ealireza
سه شنبه 25 بهمن 1384, 16:20 عصر
فرض میکنیم تعداد رکورد نمایشی 20 رکورد در صفحه باشه
بینید من میام مثلا 20* صفحه جاری تا از آخرین رکورد ها رو سلکت میکنم بصورت DESC

بعد میام مثلا20 دیگه تا از بالاش بر میدارم بصورت ASC

در آخر هم همه رو انتخاب میکنم

من از این آلگورتم استفاده میکنم



Select * From (Select top 20* From (Select top 20 id,* from tabel ) as t1 order by id asc) as t2 order by id desc

اونجایی رو که بولد کردم کووئری قرار میگره با فرض اینکه ID یک یونک باشه و از جنس INT



لطفا راهنمایی کنید چطوری اون Joinبالا رو تو این اضافه کنم

مرسی

mehranFX
سه شنبه 25 بهمن 1384, 19:31 عصر
فرض میکنیم تعداد رکورد نمایشی 20 رکورد در صفحه باشه
بینید من میام مثلا 20* صفحه جاری تا از آخرین رکورد ها رو سلکت میکنم بصورت DESC

بعد میام مثلا20 دیگه تا از بالاش بر میدارم بصورت ASC

در آخر هم همه رو انتخاب میکنم

من از این آلگورتم استفاده میکنم



Select * From (Select top 20* From (Select top 20 id,* from tabel ) as t1 order by id asc) as t2 order by id desc
اونجایی رو که بولد کردم کووئری قرار میگره با فرض اینکه ID یک یونک باشه و از جنس INT



لطفا راهنمایی کنید چطوری اون Joinبالا رو تو این اضافه کنم

مرسی
من که نفهمیدم یعنی می خوای چی کار کنی؟:اشتباه:

ealireza
سه شنبه 25 بهمن 1384, 19:56 عصر
ای بابا
از این دیگه واضح تر