PDA

View Full Version : بدست آورن اطلاعات یک فیلد مشخص با دادن آدرس آن



rasol_afkham
سه شنبه 09 اردیبهشت 1393, 11:08 صبح
با سلام و خسته نباشید خدمت همه دوستان.
سوال : اگر ما جدولی داشته باشیم که آدرس فیلدی خاص را بدانیم. برای مثال فیلدی داریم در سطر 100 و ستون 9. آیا می توان مستقیم به آن فیلد دسترسی داشت. این را برای مواردی می گویم که تعداد رکوردهای بانک خیلی زیاد است و جستجو زمان زیادی می برد. البته این را هم در نظر داشته باشید که ما دقیقا می دانیم فیلد مورد نظرمان در کدام سطر و ستون در بانک قرار دارد.

Rejnev
سه شنبه 16 اردیبهشت 1393, 00:01 صبح
سلام. میتونید از row_number استفاده کنید:
(البته تو این روش فقط میشه به شماره رکورد خاصی دسترسی داشت. تعیین شماره ستون فکر نمیکنم به روش عادی امکان پذیر باشه)

with selectWith as
(
select
ROW_NUMBER() over (order by id) as [row],
id,
name
from tbl
)
select * from selectWith
where row=5

نحوه کارش به این صورته که با استفاده از with یک سلکت تعریف میکنیم که رکوردهای یک جدول رو میخونه و یک شماره ردیف هم بهشون اضافه میکنه. توی مثال در قسمت over گفتم رکوردها بر اساس id مرتب بشن و بعد ردیفها اضافه بشن.
در قسمت بعد که باید از این with کوئری بگیریم، ردیف پنجم رو میخونه (row=5).