الانتقال إلى المحتوى
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

بتاريخ:

ارجو المساعده

لدي نظام فندقي اريد استعلام يعرض الغرف  الغير محجوزه  خلال الفتره التي ادخلها 

يعني لدي مثلا 20 غرفه 10 غرف حالتها فارغه و10 غرف حالتها  محجوزه خلال فترات مختلفه اريد من الاستعلام ان يرجع الغرف الفارغه والمحجوزه في فتره غير الفتره التي ادخلها

وهذه الجداول التي اعمل عليها

Create Table Rooms 
(
Rm_Id         Varchar(15)   Primary Key,
Rmsq_Id       Number(10)   Not Null Unique,
Rmt_Id        Number(3)    References  Roomtype(Rmt_Id) ,
Rms_Id        Number(1)    References  Roomstate(Rms_Id),
Rm_Phon       Number(10)   Not Null,
Rm_Level      Number(3)    Not Null
)
create table reservedroom
(
resrm_id     number(10)     primary key,
res_type     char(1)        not null,
resrcrd_id   number(10)     not null,
Rm_Id        varchar(15)    references rooms( Rm_Id),
res_sdate    date           not null,
res_edate    date            not null
)

تم تعديل بواسطة Ahmad.Hasan

بتاريخ:

اخي بس لو توضح لنا اكثر كل كولم ماذا يعني

 

 

يعني مثلا  rm_id  ماذاتقصد بها ؟

 

والباقي ايضا

 

 

ان شاء الله نقدر نساعدكم

 

 

اعتقد تستخدم set  operatore

 

mins

تم تعديل بواسطة صفر في الاوراكل

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

هذا توضيح لمعنى الاعمده

جدول الغرف:

 

Arabic Name

Note

Constraints

Type

Name

رقم الغرفة

(رقم نوع السكن_ الرقم التسلسلي)

Primary Key

Varchar2(15)

Rm_Id

الرقم التسلسلي

مدخل من المستخدم

Unique And Not Null  Primary Key

Number(10)

Rmsq_Id

رقم نوع السكن

Roomtype.Trm_Id

Foreign Key

Number(3)

Rmt_Id

رقم حالة الغرفة

Roomstate.Srm_Id

Foreign Key

Number(1)

Rms_Id

رقم التحويلة للغرفة

 

Not Null

Number(10)

Rm_Phon

رقم الدور

 

not null

Number(3)

rm_level

رقم الفرع

Hotelinfo( Branch_Id)

fk

Number

Branch_Id

 
جدول الغرف المحجوزه
 

Name

Type

Constraints

Note

Arabic Name

resrm_id

number(10)

primary key

فقط رقم تسلسلي للجدول

الرقم التسلسلي

rest_id

number(1)

fk

not null

res_type(rest_id)

رقم نوع الحجز

res_id

number(10)

fk

حسب نوع الحجز ناخذ رقم الحجز او التسجيل

Reservation(res_id)

رقم الحجز (مسبق)

rcrd_id

number(10)

fk

custrecord(rcrd_id)

رقم التسجيل(آني)

Rm_Id

varchar2(15)

foreign key

rooms. Rm_Id

رقم الغرفة

res_sdate

date

not null

اذا كان نوع الحجز مسبق ناخذ تاريخ البدايه و النهاية من جدول الحجز

من تاريخ

res_edate

date

not null

اذا كان نوع الحجز مسبق ناخذ تاريخ البدايه و النهاية من جدول الحجز

إلى تاريخ

 

 

 

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

غفوا كتبت البيانات في جدول ولكن ظهرت بهذا الشكل ارجو ان تكون واضحه

بتاريخ:
select rooms.rm_id, rooms.roomstate , reservedroom.res_sdate from rooms,reservedroom
where rooms.rm_id = reservedroom.rm_id
and  reservedroom.res_sdate = '&inter_date'

اتمنى يكون الحل صحيح  لاكن  في خانة  .  res_sdate

 

لست متاكدة منها لانني لم افهم ماتقصده بـ  .

 res_edate و res_sdate

 

 

ولانني اصلا مبتدئه في مجال الاوراكل

 

 

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

بتاريخ:

السلام عليكم

 

لدي نظام فندقي اريد استعلام يعرض الغرف  الغير محجوزه  خلال الفتره التي ادخلها

select column1 ,column2
from   reservedroom rs,Rooms r
where  rs.Rm_Id = r.Rm_Id
and    rs.res_type = ضع قيمه الغرفه(محجوزه او غير ذلك)
and    rs.res_sdate >= to_date('01-01-2013','dd-mm-yyyy')
and    rs.res_edate <= to_date('01-05-2013','dd-mm-yyyy');

 

 

 

 اريد من الاستعلام ان يرجع الغرف الفارغه والمحجوزه في فتره غير الفتره التي ادخلها

select column1 ,column2
from   reservedroom rs,Rooms r
where  rs.Rm_Id = r.Rm_Id
and    rs.res_sdate not in (select res_sdate 
                            from   reservedroom 
                            where  res_sdate >= to_date('01-01-2013','dd-mm-yyyy')
                                   res_edate <= to_date('01-05-2013','dd-mm-yyyy')
                           );

بتاريخ:

السلام عليكم

جرب التالي:

 

لعرض الغرف الفارغة:

 

 

SELECT rm_id,
       rm_phon,
       rm_level
  FROM rooms
 WHERE NOT EXISTS (
          SELECT 1
            FROM reservedroom
           WHERE rm_id = rm_id
             AND TRUNC (SYSDATE) BETWEEN NVL (_sdate, res_sdate)
                                     AND NVL (_edate, res_edate))

والغرف المحجوزة:

 

 

SELECT rm_id,
       rm_phon,
       rm_level
  FROM rooms
 WHERE EXISTS (
          SELECT 1
            FROM reservedroom
           WHERE rm_id = rm_id
             AND TRUNC (SYSDATE) BETWEEN NVL (_sdate, res_sdate)
                                     AND NVL (_edate, res_edate))

 

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

عفوا على التاخر في الرد حال الكهرباء عندنا مزري 

وشكرا للاساتذه فمن مساعدتكم توصلت للحل وهو

 

 

select RM_ID
from   Rooms 
where rmt_id=1 AND  (RMS_ID =1
                                    OR (RMS_ID =2 and    RM_ID NOT IN (SELECT RM_ID FROM RESERVEDROOM WHERE res_sdate  in (select res_sdate
                                                                                                                                                                                                     from   reservedroom
                                                                                                                                                                                                     where  res_sdate >= to_date('01-01-2013','dd-mm-yyyy')
                                                                                                                                                                                                      AND  res_edate <= to_date('01-05-2013','dd-mm-yyyy')))))

 

 

الحقل  rmt_id يحدد نوع الغرفه 

و الحقل (RMS_ID =1 يبين ان حاله الغرفه فارغه

والحقل (RMS_ID =2 يبين ان حاله الغرفه مشغوله و ولكن بشرط ان تكون فارغه خلال الفتره المدخله

 

 

وشكرا جزيلا على المساعده

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

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

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

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

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

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.