PDA

View Full Version : معادل کوئری sql در access - نمایش شماره برای سطرهای سلکت شده



modern_amin
دوشنبه 17 مهر 1391, 12:20 عصر
با سلام
من میخام تو بعد هر سلکتی که میگیرم شماره سطر جاری اونهم باشه
کوئریش تو sql رو بلدم (زیر) ولی متاسفانه تو access بلد نیستم، لطفا کمک کنید ؟خیلی فوریه...


SELECT ROW_NUMBER() OVER (ORDER BY [ID_barge]) , barge.serial FROM barge

Abbas Amiri
دوشنبه 17 مهر 1391, 14:29 عصر
به آدرس زیر مراجعه کنید
http://social.msdn.microsoft.com/Forums/en-US/accessdev/thread/059cc192-7460-41ae-bce7-15b344383cb0/

modern_amin
سه شنبه 18 مهر 1391, 12:16 عصر
متاسفانه تایپیکهای msdn به نتیجه نهایی نرسیده و آدم رو بدتر گیج میکنه....
تو sql خیلی راحته ولی تو access .....

اگه شما چیزی فهمیدید به منم بگید چیکار باید بکنم و نحوه نگارش کوئری sql که در بالا نوشتم دقیقا به چه شکلی تو access میشه ؟؟؟

Abbas Amiri
سه شنبه 18 مهر 1391, 13:50 عصر
کدموردنظر شما بصورت زیر می باشد:

SELECT (SELECT COUNT(*)+1 FROM barge AS b WHERE b.ID < barge.ID) AS Row, barge.serial
FROM barge
ORDER BY barge.ID_barge;

modern_amin
چهارشنبه 19 مهر 1391, 11:21 صبح
واقعا ممنون که وقت میزارید..... تو عکس های زیر فک کنم مشخص بشه که کجا منو گیج کرده....
من تو اس کیو سرور با این کوئری توهر سلکتی که میگرفتم خودش میاد ردیف میزنه ، یعنی اگه سلکت من 10سطر داشته باشه ROW_NIMBER میاد تو ستون خودش از یک تا ده ردیف میزنه
و من اونرو مسقیم میندازم تو دیتاگرید
البته من میتونم بیام بصورت محاسباتی یکی یکی خودم شماره ردیف سطر رو بدم ولی تو حجم بالا سرعتم 10برابر کمتر میشه....
http://imgiran.com/images/i9dypr0c4f6vxdtwypf9.png

موقعی که کوئری که زحمت کشیدید و دادید رو اجرا میکنم از من دوتا پارامتر میخاد .... من هر دوتا رو یک وارد کردم و کل سطرهای من 1 نشست ، وقتی یکی رو 1 و بعدیرو 2 وارد کردم مقدار count کل سطرهام نشست
http://imgiran.com/images/g3nr35m9fs768f2z595y.png

لطفا راهنمایی کنید.... خیلی برام مهمه.....

Abbas Amiri
چهارشنبه 19 مهر 1391, 18:49 عصر
سلام
نمونه جدول را با چند رکورد آپلود کنید

modern_amin
یک شنبه 23 مهر 1391, 15:50 عصر
واقعا ممنون از پاسخ و پیگیریهاتون...

هر جدولی با هر تعداد فیلدی میتونه باشه ، هییییییییییییچ فرقی نداره... من فقط دستور انداختن ردیف بصورت خودکار در سلکت ها رو میخام و البته نحوه نگارش صحیحش (syntax)

در واقع من فقط میخام برای نتایج سلکت من شماره ردیف رو بصورت خودکار بزنه دقیقا مثل اولین عکس تو sql که برای جواب سلکت بنده 11418 سطر پیدا کرده و برای هرکدوم خودش به ترتیب ردیف زده ولی تو عکس زیری شماره4 که متعلق به نتیجه در برنامه access هست باز هم همون 11418 سطر رو به عنوان جواب پیدا کرده ولی شماره ردیف نمیزنه چیکار باید کرد؟ لطفا از هر کمکی بنده رو دریغ نکنید............