PDA

View Full Version : سوال در مورد select بستن خاص در برنامه



نیما حتمی
یک شنبه 21 مهر 1392, 17:52 عصر
با سلام


دوستان من یه همچین رشته ای دارم(2871-1392) من میخوام با یه سلکت چهار رقم بعد-1392 (البته بزرگترین عدد این ستون) رو بکشم بیرون یکی بهش اضافه کنم ودر یک تکس باکس نشون بدم.
دستوری که خودم نوشتم اینه:




select max(Left(shgh,4)) from customer



ولی هر دفعه میره عدد 2812 رو انتخاب میکنه میاره و یکی اضافه میکنه بهش یعنی همیشه 2813 رو به من نشون میده؟


راه حل چیه؟

veniz2008
یک شنبه 21 مهر 1392, 19:49 عصر
با سلام


دوستان من یه همچین رشته ای دارم(2871-1392) من میخوام با یه سلکت چهار رقم بعد-1392 (البته بزرگترین عدد این ستون) رو بکشم بیرون یکی بهش اضافه کنم ودر یک تکس باکس نشون بدم.
دستوری که خودم نوشتم اینه:




select max(Left(shgh,4)) from customer



ولی هر دفعه میره عدد 2812 رو انتخاب میکنه میاره و یکی اضافه میکنه بهش یعنی همیشه 2813 رو به من نشون میده؟


راه حل چیه؟
سلام.
از کد زیر استفاده کنید :

select MAX(CAST(SUBSTRING(StdBirthDay, CHARINDEX('-',StdBirthDay) + 1, LEN(StdBirthDay) - charindex('-',StdBirthDay)) AS smallint)) from TblStudent

نیما حتمی
یک شنبه 21 مهر 1392, 20:51 عصر
مرسی دوست گلم از جوابی که دادی.

این کد شما بزگترین عددو پیدا میکنه ولی +1 نمیکنه در واقع همونو نشون میده(بزرگترینو)

veniz2008
یک شنبه 21 مهر 1392, 21:10 عصر
این کد شما بزگترین عددو پیدا میکنه ولی +1 نمیکنه در واقع همونو نشون میده(بزرگترینو)
کافی بود به جواب MAX یک واحد اضافه کنید :

select MAX(CAST(SUBSTRING(StdBirthDay,CHARINDEX('-',StdBirthDay) + 1,LEN(StdBirthDay) - charindex('-',StdBirthDay)) AS smallint)) + 1 from TblStudent