PDA

View Full Version : سوال: خواندن یک فید تا یک کاراکتر خواص



baran_mehr
شنبه 12 مرداد 1387, 12:23 عصر
:قلب:سلام خدمت داداشا و خواهرای گلم.:قلب:
میخواستم بدونم ایا دستور Select رو میشه طوری نوشت که مثلا تا رسیدن به کاراکتر (/) به خوندن فیلد ادامه بده و از این کاراکتر به بعد رو بر نگردونه؟:متفکر:
مثلا فردی که شماره دانشجویش 8489 هست رو پیدا کنه و فیلد نامش رو تا رشیدن به کاراکتر (/) بخونه:تشویق:

baran_mehr
شنبه 12 مرداد 1387, 13:26 عصر
کسی از دوستان نمیتونه من رو تو این زمینه راهنمایی کنه؟
ممنون میشم

ASKaffash
شنبه 12 مرداد 1387, 14:00 عصر
سلام
اینطوری :


Select YF,
Case
When CharIndex('/',YF)=0 Then ''
Else Substring(YF,1,CharIndex('/',YF)-1)
End
From YT

Elham_gh
شنبه 12 مرداد 1387, 14:05 عصر
شما در عبارت select تون بايد اين عبارت رو select كنيد:


SELECT LEFT(Name,CHARINDEX('/',Name))
From tbl1

رضا جاسبی
شنبه 12 مرداد 1387, 23:29 عصر
شما در عبارت select تون بايد اين عبارت رو select كنيد:


SELECT LEFT(Name,CHARINDEX('/',Name))
From tbl1

اشکال این کد این است که اگر / در فیلد مورد نظر نبود اصلا چیزی نمیاره. یعنی در واقع یک empty string بهمون برمیگردونه.
همینطور کد استاد عزیزم کفاش :


Select YF,
Case
When CharIndex('/',YF)=0 Then ''
Else Substring(YF,1,CharIndex('/',YF)-1)
End
From YT



به نظر من بهتره اینجوری بنویسی :


SELECT your list , CASE
WHEN CHARINDEX('/', name) = 0
THEN name
ELSE LEFT(name, CHARINDEX('/', name)) END
FROM tablename

baran_mehr
یک شنبه 13 مرداد 1387, 00:00 صبح
دوستان این دوستورات فقط برای برنامه SQL هست ؟؟ یعنی نمیشه اینها رو در اکسس هم اجرا کرد؟؟