سؤال sql

أرسل من قبل suzan في الأربعاء, 2008/03/12 - 2:19pm.

تاريخ التسجيل: 2007-03-04
مشاركات: 234

الجامعة: دمشق
الكلية: الهندسة المعلوماتية
المرحلة: متخرج
الاختصاص: هندسة برمجيات

أريد اقتطاع سلسلة محرفية من البداية وحتى الفراغ الثالث
هل يوجد تابع sql لعمل ذلك

 
دخول أو تسجيل لإرسال التعليقات | قراءة: 228

خيارات عرض التعليقات

اختر طريقتك المفضلة لعرض التعليقات و اضغط "حفظ الإعدادات" لتفعيل تغييراتك.
الأربعاء, 2008/03/12 - 2:23pm
مشرف
صورة mpcabd

تاريخ التسجيل: 2006-02-19
مشاركات: 1785

الجامعة: دمشق
الكلية: الهندسة المعلوماتية
المرحلة: السنة الثانية




A dream is not what you see in sleep, it is the thing which doesn't let you sleep.

 
دخول أو تسجيل لإرسال التعليقات
الأربعاء, 2008/03/12 - 3:14pm

تاريخ التسجيل: 2007-03-04
مشاركات: 234

الجامعة: دمشق
الكلية: الهندسة المعلوماتية
المرحلة: متخرج
الاختصاص: هندسة برمجيات

التابع substr ما بيعطيني لحد فراغ معين
بدي شي مكافئ ل instr
بارمتراته
البدابة ، المحرف (فرغ مثلا)، رقمه

 
دخول أو تسجيل لإرسال التعليقات
الأربعاء, 2008/03/12 - 3:28pm
مشرف
صورة mpcabd

تاريخ التسجيل: 2006-02-19
مشاركات: 1785

الجامعة: دمشق
الكلية: الهندسة المعلوماتية
المرحلة: السنة الثانية

أي بدك تعملي أول شي InStr وبعدين SubString.


A dream is not what you see in sleep, it is the thing which doesn't let you sleep.

 
دخول أو تسجيل لإرسال التعليقات
الأربعاء, 2008/03/12 - 6:02pm

تاريخ التسجيل: 2008-02-27
مشاركات: 15

الجامعة: غير ذلك
الكلية: الهندسة المعلوماتية
المرحلة: ماجستير
الاختصاص: غير ذلك

يا شباب انتو ليش هيك مصعبين المشكله في تابع split_part و هاد التابع لايلو 3 بارامترات الاول هوي السلسله المحرفيه الي انت بدك تقسمها و التاني هوي المجزء الي لازم تستخدمو من السلسله نفسها و التالت هوي الجزء الي انت بتختارو على يمين المجزء و لي على يسارو لحتى تشوفو

SELECT rtrim(split_part('sdsd sdf s dgfsd sd',
split_part('sdsd sdf s dgfsd sd',' ',4)
,1));d

rtrim
------------
sdsd sdf s

سوريا

 
دخول أو تسجيل لإرسال التعليقات
الخميس, 2008/03/13 - 4:48am
مدير
صورة foaad

تاريخ التسجيل: 2005-07-15
مشاركات: 2505

الجامعة: دمشق
الكلية: الهندسة المعلوماتية
المرحلة: السنة الرابعة
الاختصاص: هندسة برمجيات

كتب يا ريت:
يا شباب انتو ليش هيك مصعبين المشكله في تابع split_part
بظن هاد التابع موجود فقط بـ PostgreSQL و MySQL
وبظن suzan عم تسأل عن SQL Server

طبعاً بـ SQL Server مافي هيك تابع
ممكن عمل تابع مشابه باستخدام حلقة WHILE والتابعين CHARINDEX و SUBSTRING
أو ممكن كتابة الكود القبيح التالي:

SELECT SUBSTRING(C, 1, CHARINDEX(' ', C, CHARINDEX(' ', C, CHARINDEX(' ', C) + 1) + 1) - 1) FROM T

طبعاً الكود السابق بيعطي خطأ بحال عدم احتواء الشريط المحرفي على 3 فراغات, مشان هيك يفضل كتابة تابع.

 
دخول أو تسجيل لإرسال التعليقات
الخميس, 2008/03/13 - 11:06am

تاريخ التسجيل: 2007-03-04
مشاركات: 234

الجامعة: دمشق
الكلية: الهندسة المعلوماتية
المرحلة: متخرج
الاختصاص: هندسة برمجيات

شكرا كتير اخي فؤاد طيب

في تابع لمعرفة تكرار ظهور محرف في سلسلة نصية

 
دخول أو تسجيل لإرسال التعليقات
الخميس, 2008/03/13 - 8:42pm
عضو فعال
صورة NightWolf

تاريخ التسجيل: 2006-10-12
مشاركات: 861

الجامعة: دمشق
الكلية: الهندسة المعلوماتية
المرحلة: السنة الثالثة

بتوقع فيكي تساويه بايدك
بدك تابع يمشي بحلقة while على كل الحروف( طبعاً بدك تقطعي السلسلة لأحرف ) ويشوف حرف حرف اذا لقى الحرف المطلوب بيزيد 1 وهكذا

Don't Think About How You Fell Down,Think About How To Fly Up Once More ... Renwar

&nbsp

 
دخول أو تسجيل لإرسال التعليقات
الجمعة, 2008/03/14 - 1:08pm

تاريخ التسجيل: 2007-02-11
مشاركات: 13

الجامعة: غير ذلك
الكلية: تكنولوجيا المعلومات
المرحلة: السنة الثالثة

كتب suzan:
أريد اقتطاع سلسلة محرفية من البداية وحتى الفراغ الثالث هل يوجد تابع sql لعمل ذلك

إذا كان الحكي عن الأوراكل فممكن ذلك عن طريق دوال الsubstr و ال instr

select substr('aa bb cc tt',1,(instr('aa bb cc tt', ' ',1,3)))

instr بترجعلك ال position لثالث فراغ و substr بترجعلك الstring من أول حرف لتالت فراغ
النتيجة بالمثال اللي فوق هي aa bb cc

 
دخول أو تسجيل لإرسال التعليقات
السبت, 2008/03/15 - 11:48am

تاريخ التسجيل: 2007-03-04
مشاركات: 234

الجامعة: دمشق
الكلية: الهندسة المعلوماتية
المرحلة: متخرج
الاختصاص: هندسة برمجيات

الحكي مو عن اوراكل عن sql server

 
دخول أو تسجيل لإرسال التعليقات