الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

سؤال عن Sql Statement

مغلق
بدأه husegypt في 31 مايو 2003 · 3 رد · 2,444 مشاهدة · في أرشيف قسم SQL Server
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

سلام عليكم يا شباب

بعد التحية و السلام ارجو مساعدتى فى الأتى

لدى جدولين أحدهم للموظفين و الأخر مربوط به لجمع الرسائل بين هؤلاء الموظفين

و قد أستطعت بفضل من الله ان أقوم بجعل كل موظف مسجل بالجدول الأول أن يرسل الى شخص أخر رسالة بشرط ان يكون ايضا مسجل بهذا الجدول

المشكلة عندى الأن هو كيف أجعل أحد الموظفين من أن يرسل الى كل الموظفين فى خطوة واحدة

بيانات الحقول كالتالى

الموظفين

1-الرقم

2-الأسم

3-أسم الدخول

الرسائل

1-الرقم

2-رقم المرسل

3-رقم الرسل اليه

4-التاريخ

5-الرسالة

6-عنوان الرسالة

و شكراً جزيل الشكر

#2

Use a stored procedure,the following should work

Create Procedure SendToAll
@Sender_Id int,
@Subject nvarchar(50),
@Body nvarchar(500)
AS
DECLARE @Recepient_Id int
DECLARE EmployeesCursor CURSOR
FOR
   SELECT Employee_Id 
   FROM Employees Where Employee_Id <> @Sender_Id
OPEN EmployeesCursor
FETCH NEXT FROM EmployeesCursor INTO @Recepient_Id

WHILE (@@FETCH_STATUS <> -1)
BEGIN
     Insert Into Messages(Sender_Id,Recepient_Id,Subject,Body,Sent_Date) Values
            (@Sender_Id,@Recepient_Id,@Subject,@Body,GetDate())
FETCH NEXT FROM EmployeesCursor INTO @Recepient_Id  
END
CLOSE EmployeesCursor
DEALLOCATE EmployeesCursor

تم تعديل هذه المشاركة بواسطة walcom في 10 مارس 2005 في 12:30

#3

شكراً لك أخ مدنى على هذه المشاركة و أيضاً على المعلومة التى افادتنى جداً عن ال Cursors

و لى سؤال هل يمكن ان استرجع بيانات بناءاً على Range معين بين تاريخين

مثلاً بين 11/05/2003 و 12/8/2004

كيف ذلك

#4
SELECT * FROM  table WHERE  mydate BETWEEN '1/4/2003' AND '3/26/2003'


او

SELECT * FROM   table WHERE dt > '1/4/2003' AND dt < '3/26/2003'

تم تعديل هذه المشاركة بواسطة walcom في 10 مارس 2005 في 12:31

هذا الموضوع مغلق.

مواضيع مشابهة