الانتقال إلى المحتوى
View in the app

A better way to browse. Learn more.

مجموعة مستخدمي أوراكل العربية

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

ارجو المساعدة في في فلترة الاسماء العربي او الانجليزية من عمودر في جدول

Featured Replies

بتاريخ:

السلام عليكم ورحمة الله وبركاته

لدي جدول يحتوي على عدة اعمدة يوجد فيها عمود الأسم في هذا العمود توجد اسماء اما بالانجليزي او بالعربي

كيف يمكنني فلترة هذه الاسماء اما العربي او الانجليزي في جملة select

علما باني استخدم pl/sql Developer

 

 

شاكر لهذا المنتدى واعضائه ومشرفيه هذا الجهد الاكثر من رائع

بتاريخ:

السلام عليكم

جرب هذه الطريقة وعدل عليها ان احتجت:

 

DECLARE
   CURSOR c
   IS
      SELECT full_name
        FROM per_all_people_f
       WHERE TRUNC (SYSDATE) BETWEEN effective_start_date AND effective_end_date;


   ch   VARCHAR2 (200);
BEGIN
   FOR rec IN c
   LOOP
      FOR i IN 1 .. LENGTH (rec.full_name)
      LOOP
         ch := SUBSTR (rec.full_name, i, 1);


         IF (ch NOT BETWEEN 'A' AND 'Z') OR (ch NOT BETWEEN 'a' AND 'z')
         THEN
            INSERT INTO temp_table1
                        (ename
                        )
                 VALUES (rec.full_name
                        );
         END IF;
      END LOOP;
   END LOOP;
END;
بتاريخ:
  • كاتب الموضوع

اخي الكريم وين اضع هذا الكود

بتاريخ:
  • كاتب الموضوع

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

بتاريخ:

 


SELECT full_name
FROM your_table
WHERE full_name BETWEEN 'A' AND 'Z'


SELECT full_name
FROM your_table
WHERE full_name BETWEEN 'ا' AND 'ي'

 

بتاريخ:

السلام عليكم

تم تعديل الكود السابق:

 

CREATE TABLE temp_table1
(
  ename  VARCHAR2(100 BYTE)
)
TABLESPACE apps_ts_tx_data
PCTUSED    0
PCTFREE    10
INITRANS   1
MAXTRANS   255
STORAGE    (
            INITIAL          128 k
            NEXT             128 k
            MINEXTENTS       1
            MAXEXTENTS       UNLIMITED
            PCTINCREASE      0
            BUFFER_POOL      DEFAULT
           )
LOGGING
NOCOMPRESS
NOCACHE
NOPARALLEL
MONITORING;

 

DECLARE
   CURSOR c
   IS
      SELECT full_name
        FROM per_all_people_f
       WHERE TRUNC (SYSDATE) BETWEEN effective_start_date AND effective_end_date;


   ch   VARCHAR2 (200);
   x    NUMBER;
BEGIN
   FOR rec IN c
   LOOP
      x := LENGTH (rec.full_name);
      ch := SUBSTR (rec.full_name, 1, x);


      IF (ch NOT BETWEEN 'A' AND 'Z') AND (ch NOT BETWEEN 'a' AND 'z')
      THEN
         INSERT INTO temp_table1
                     (ename
                     )
              VALUES (rec.full_name
                     );
      END IF;
   END LOOP;
END;

عدل على الكود حسب احتياجك حيث ان الكود سيقوم بادخال الاسماء العربي فقط على الجدول.

 

ولعرض الأسماء بالانجليزي استخدم:

 

SELECT full_name
  FROM per_all_people_f a
 WHERE TRUNC (SYSDATE) BETWEEN effective_start_date AND effective_end_date
   AND NOT EXISTS (SELECT 'x'
                     FROM temp_table1 b
                    WHERE b.ename = a.full_name)
بتاريخ:
  • كاتب الموضوع

جربت حل اخي حمودي وضبط 100% شاكر لكم جميعا جهودكم

وعسى ربي يجعلها في موازيين حسناكم

انضم إلى المناقشة

يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.

زائر
أضف رد على هذا الموضوع...

برجاء الإنتباه

بإستخدامك للموقع فأنت تتعهد بالموافقة على هذه البنود: سياسة الخصوصية

Account

Navigation

البحث

إعداد إشعارات المتصفح الفورية

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.