ايران ويج

نسخه‌ی کامل: از شماره x تا شماره y در یک دیتا بیس
شما در حال مشاهده‌ی نسخه‌ی متنی این صفحه می‌باشید. مشاهده‌ی نسخه‌ی کامل با قالب بندی مناسب.
--------------------------------------------------------------------------------

یک تیبل دارم که دارای دو فیلد هست فیلد 1 شامل نام افراد و فیلد 2 شامل شماره تلفن انها میباشد یک دستور sql یا غیر sql میخواهم که بگه از شماره مثلا 1 تا 20 مال علی از شماره 21 تا 30مال حسن و از شماره 31 تا 50 دو باره مال علی
البته نمیخواهم شماره های اونها رو نشون بده فقط شماره ابتدا و انتهای اونها رو نشون بده
ممنون
فرض كنيم يك جدول داريم با فيلد r يعني شماره سطر و فيلد n به معني نام
از این هم نمیتونم استفاده کنم چون فیلد r مقدارش میتونه تغییر کنه و مقدارهاش پشت سر هم نیست
کد:
SELECT n,Min(r) AS Start, Max(r) AS End FROM Table1 GROUP BY n
این کار رو نمی تونی با SQL، به صورت یکجا انجام بدی
شما باید اطلاعات رو بر اساس اسم ها بیرون بکشی، بعد یه loop بنویسی که اعداد پشت سرهم رو تشخیص بده و فقط عدد اول و آخر رو نمایش بده.اگه خواستی می تونم دقیق تر هم بهت بگم
ممنون میشم بیشتر راهنمایی کنید
تعاریف:
Table Name: tbl1
Field Name: name
Field Name: number

توضیحات:
اول این دستور رو به دیتابیس می فرستی:
کد:
SELECT DISTINCT name FROM tbl1

نام هایی که اومده رو توی یه آرایه یا یه لیست باکس ذخیره می کنی(فرض کن تو یه لیست باکس ذخیره کردی که اسم Lst1 هستش)
حالا یه For می نویسی که از صفر تا تعداد آیتم های لیست باکس بشمره.
کد:
For i = 0 To Lst1.ListCount - 1

Next
تو دل For (بین For و Next) باید دستوراتی رو بنویسی که این دستور رو به دیتابیس بفرسته:
کد:
"SELECT * FROM tbl1 WHERE name = '" & lst1.list(i) & "'" f
اون f آخر رو زدم که راست به چپش درست شه! جزو دستور نیست
حالا باید یه فانکشن یا یه ساب بنویسی که کارش تشخیص اعداد پشت سر هم باشه. این کارشو می دم به خودت که همشو من بهت نگفته باشم.
من که هرکاریش کردم جواب نداد 2 روزه دارم روش کار میکنم ولی جواب نمیده لطفا این قسمت رو هم کامل کنید
پروژه و دیتابیس ها رو آپلود کنین تا براتون درستش کنم.
خودم رو گشتم تا درست شد اصلا فکر نمیکردم این همه وقتم رو بگیره لطف میکنید اگه ببینید برنامه مشکلی نداشته باشه البته پستهای قبلی رو تو برنامه اصلی لحاظ میکنم
خب خدا رو شکر که درست شد!!!
من تست کردم مشکلی نداشت