مرجع تخصصی برنامه نویسان

انجمن تخصصی برنامه نویسان فارسی زبان

کاربر سایت

sg.programmer

عضویت از 1393/06/30

تولید کوئری بر روی یک فیلد عددی

  • چهارشنبه 22 شهریور 1396
  • 20:10
تشکر میکنم

سلام

چنین کوئری را چطوری تولید کنم؟

درجدولم یک فیلد عددی X دارم - میخوام با استفاده از مقداری که داخل این فیلد هست کار زیر صورت بگیره

if (x>=1or  x<=15)
n1++
else if (x>=16or  x<=30)
n2++
else if (x>=31)
n3++

بر اساس هر سطری این مقادیر (n1 , n2 , n3) چاپ بشه.

و 2) همچنین بر اساس همین کوئری بصورت یک بازه زمانی چطور خواهد بود؟

پاسخ های این پرسش

تعداد پاسخ ها : 4 پاسخ
کاربر سایت

ایمان مدائنی

عضویت از 1392/01/20

  • پنجشنبه 23 شهریور 1396
  • 09:28

از linq استفاده کنید

کاربر سایت

sg.programmer

عضویت از 1393/06/30

  • پنجشنبه 23 شهریور 1396
  • 13:55

تشکر مهندس

اگه از طریق TSQL میدونید بگید چطور میشه؟

و از طریقLinq چطوری خواهد شد؟

در ضمن n1,n2,n3 متغیر ها کمکی هستند و فیلدی در سیستم نیست: چطوری سیستم انها را شناسایی خواهد کرد؟

کاربر سایت

ایمان مدائنی

عضویت از 1392/01/20

  • جمعه 24 شهریور 1396
  • 08:14

من اصلا منظورتون رو متوجه نمیشم

کاربر سایت

lotfi1008

عضویت از 1394/07/06

  • پنجشنبه 6 مهر 1396
  • 10:23

اگر می خواهید که یک کوئری برای این بنویسید پیشنهاد من اینه که از case استفاده کنید برای این کوئری که شما گفتین تا جایی که من فهمیدم 

فرض میکنم جدول شما دارای ستون های x , n1 , n2 , n3 می باشد 

کوئری زیر اینکار رو می کنه


SELECT [x]
      ,CASE 
		WHEN x>=1 AND x<=15 THEN n1+1
		ELSE n1
		END AS m1
      ,CASE 
		WHEN x>=16 AND x<=30 THEN n2+1
		ELSE n2
		END AS m2
      ,CASE 
		WHEN x>30 THEN n3+1
		ELSE n3
		END AS m3
  FROM [test11].[dbo].[Table]

کاربرانی که از این پست تشکر کرده اند

هیچ کاربری تا کنون از این پست تشکر نکرده است

اگر نیاز به یک مشاور در زمینه طراحی سایت ، برنامه نویسی و بازاریابی الکترونیکی دارید

با ما تماس بگیرید تا در این مسیر همراهتان باشیم :)