PDA

View Full Version : استفاده همزمان از TOPو Count در پروسییجر



sam166
دوشنبه 31 تیر 1392, 00:33 صبح
سلام دوستان خسته نباشیید

من میخوام از بانک اطلاعاتیم 3 تا رکورد رو به صورت رندوم بخونم
این کارو میتونم انجام بدم
مشکل من اینه که میخوام این 3 تا رکورد رو بشماره و داخل یه متغیر به صورت 1 2 3 به من تحویل بده
این کد رو پیدا کردم ولی کار نمیکنه
SELECT
TOP 3 *,
(SELECT
COUNT(*)
FROM MyTable
WHERE MyColumn = 'SomeValue') AS NumberOfRows
FROM MyTable
WHERE MyColumn = 'SomeValue'
ORDER BY ID

در اصل من میخوام 3 تا سوال رو از بانک بخونم
حالا که این سوالات رو خوندم میخوام بهشون شماره 1 2 3 بدم
لطفا راهنمایی فرمایید

m.webgard
دوشنبه 31 تیر 1392, 02:05 صبح
سلام
دوست عزیز اگر قراره که به هر سطر یک شماره بدید میتونید از Row Number استفاده کنی. مثلا:
SELECT ROW_NUMBER() OVER(ORDER BY FieldName DESC) AS Row
که در اینجا FieldName اسم ستونی هست که میخواید سطرهارو بر اساس اون مرتب کنید
موفق باشید