PDA

View Full Version : دستور sql این پرس و جو چی میشه؟



kiani2012
پنج شنبه 28 بهمن 1395, 20:03 عصر
سلام
من جدولی دارم شامل فیلدهای
id ، کد شهرستان ، کد اداره ، کد ملی شخص و تاریخ (این فیلد مهمه)
کلید رو id که یک فیلد اتوماتیک هست قرار دادم
الان میخوام رکوردهای را بر اساس کد ملی شخص group by کنم و از هر group رکوردی که آخرین تاریخ رو داره انتخاب کنم
ولی با این ارور مواجهه میشم
Column 'allocate.Id' is invalid in the select list because it is not contained in either an aggregate function or the GROUP BY clause.

برای حل مشکلم باید چه دستوری بنویسم؟

mhamedm2008
پنج شنبه 28 بهمن 1395, 20:49 عصر
کد کامل رو بزارید

kiani2012
جمعه 29 بهمن 1395, 09:20 صبح
select id,Kasset from allocate group by Kasset



کد sql

mhamedm2008
جمعه 29 بهمن 1395, 15:08 عصر
select id,Kasset from allocate group by Kasset



کد sql

برای group باید id هم و بزاری

select id,Kasset from allocate group by Kasset,id

kiani2012
شنبه 30 بهمن 1395, 16:13 عصر
بله درسته
ولی من یه مشکل دیگه هم دارم اینه که:
فرض کنید فیلدهای من اینها باشن:
id,Nationalcode,Ccode,Ocode,Kasset,Adate
و رکوردهای من اینها باشن:
1,546,1910,1,4444,1995/09/27
2,546,1910,1,2222,1995/12/14
1,547,1910,1,4444,1995/01/01
میخوام بر اساس کد ملی گروه بندی بشن و در هر گروه رکوردی که آخرین تاریخ رو داره نمایش داده بشه یعنی:
1,546,1910,1,4444,1995/09/27
2,546,1910,1,2222,1995/12/14

Mahmoud.Afrad
یک شنبه 01 اسفند 1395, 20:11 عصر
http://sqlmag.com/database-development/optimizing-top-n-group-queries
http://stackoverflow.com/a/6841644

ma.rad
جمعه 13 اسفند 1395, 21:43 عصر
دوستان کد sql میخوام