البرمجة

تحليل إحصائي: إجمالي عدد الحجوزات وتفاصيل أنواع الفعاليات في قاعدة بيانات SQL Server

للقيام بذلك، يمكنك كتابة استعلام SQL باستخدام الدالة COUNT(*) لحساب إجمالي عدد السجلات في جدول الحجوزات ومجموعة GROUP BY لتجميعها حسب نوع الحجز. فيما يلي استعلام قد يفيدك في هذا السياق:

sql
SELECT 'Total Booking' AS [Booking Type], COUNT(*) AS [Total], STRING_AGG(CONCAT([Type], ' ', COUNT(*)), ', ') AS [Booking Type Details] FROM YourBookingTable GROUP BY [Type]

يقوم هذا الاستعلام بحساب إجمالي عدد الحجوزات ويقوم بتجميعها حسب نوع الحجز. الجزء الأخير من الاستعلام (STRING_AGG) يقوم بدمج نوع الحجز وعدد الحجوزات لكل نوع في خلية واحدة، ويفصل بينهم بفاصلة وفاصلة.

يمكنك استبدال YourBookingTable بالجدول الفعلي الذي تستخدمه. وبهذا، ستحصل على نتائج تظهر إجمالي عدد الحجوزات بالإضافة إلى تفاصيل حول أنواع الحجوزات وعددها لكل نوع.

المزيد من المعلومات

بالتأكيد، يُسعدني أن أقدم لك مزيدًا من المعلومات حول الاستعلام المقترح. في الاستعلام السابق، استخدمنا دالة COUNT(*) لحساب إجمالي عدد الحجوزات واستخدمنا STRING_AGG لدمج نوع الحجز مع عدد الحجوزات لكل نوع.

يُفضل أيضًا أن تتأكد من وجود فهرس على العمود الذي تستخدمه للتجميع (Type) لتحسين أداء الاستعلام. يمكنك إضافة فهرس على هذا العمود باستخدام الأمر التالي:

sql
CREATE INDEX IX_Type ON YourBookingTable([Type]);

كما يمكنك تعديل الاستعلام لترتيب النتائج حسب عدد الحجوزات بترتيب تنازلي، مما يجعل النتائج أكثر وضوحًا وسهولة قراءة. يمكنك فعل ذلك باستخدام ORDER BY:

sql
SELECT 'Total Booking' AS [Booking Type], COUNT(*) AS [Total], STRING_AGG(CONCAT([Type], ' ', COUNT(*)), ', ') AS [Booking Type Details] FROM YourBookingTable GROUP BY [Type] ORDER BY [Total] DESC;

هذا الاستعلام سيعرض النتائج مرتبة تنازليًا حسب إجمالي عدد الحجوزات، مما يسهل قراءتها وفهمها.

زر الذهاب إلى الأعلى