![]() |
|
|||||||
| قواعد بيانات MS SQL Server قسم يعني بتقنية قواعد بيانات MS SQL Server وكل التقنيات المتعلقة بها بمختلف اصدارتها ، والمنافسة لـ Oracle بجدارة . ملاحظة : هذا القسم غير مخصص لربط تطبيقات لغات البرمجة بهذا النوع من قواعد البيانات . |
| آخر 10 مشاركات |
|
|
|
LinkBack | أدوات الموضوع | انواع عرض الموضوع |
|
|
#1 (permalink) |
|
عميد كلية
الجنس: ذكـــر الجنسية: سوريا بلد الإقامة: سوريا الوظيفة: تكنلوجيا المعلومات - برمجة المؤهل الدراسي: البكلوريوس التخصص العلمي: تكنلوجيا المعلومات - هندسة حاسب آلي كيف عرفت عن موقعنا: اعلان عن موقعكم في موقع اخر تاريخ التسجيل: Aug 2007
المشاركات: 408
شكراً: 34
تم شكره 8 مرة في 5 مشاركة
معدل تقييم المستوى:2
![]() |
للحصول على التاريخ فقط دون الوقت
بسم الله الرحمن الرحيم هذا التابع وظيفته هو الحصول على التاريخ فقط دون الوقت (قيمة الوقت أصفار 00:00:00( يفيد هذا التابع في العديد من الحالات أهمها عندما أجري مقارنة بين تاريخين فقط حيث أن الوقت لا يهمني على الإطلاق، فإنه سيؤدي إلى الحصول على بعض النتائج الخاطئة، وذلك نتيجة لمقارنة الوقت معه. فمثلا لو أن لدي جدول للمستعيرين، وأردت الحصول على تقرير بأسماء جميع المستعيرين اللذين انتهت مدة اعارتهم ولنفرض أن التاريخ الكامل الآن من خلال التابع (الدالة) GetDate() هي: كود:
:الناتج2007-06-21 12:26:24.807 ولنفرض أن لدي مستعير مسجل في الجدول تنتهي فترة إعارته في: 2007-06-21 12:35:24.807لاحظ الفرق هو دقائق معدودة فقط فإن ناتج الاستعلام الناتج عند مقارنة حقل تاريخ انتهاء الإعارة مع التابع GetDate() لن يظهر هذا المستعير (أعود و أذكر بأن الوقت لا يهمني وإنما يهمني فقط التاريخ)، فلحل هذه المشكلة تستخدم التابع التالي: كود:
GetDateOnly(DateTime @DateTime); وهو على الشكل التالي: كود:
set ANSI_NULLS ON
set QUOTED_IDENTIFIER ON
go
-- =============================================
-- Author: Abdulkarim Kanaan
-- Create date: 4/6/2007
-- Description: للحصول على التاريخ فقط دون الوقت
-- =============================================
CREATE FUNCTION [dbo].[GetDateOnly]
(
-- Add the parameters for the function here
@DateTime DateTime
)
RETURNS smalldatetime
AS
BEGIN
-- Declare the return variable here
DECLARE @Result smalldatetime
Select @DateTime = DateAdd(hh, -DatePart(hh, @DateTime), @DateTime);
Select @DateTime = DateAdd(mi, -DatePart(mi, @DateTime), @DateTime);
Select @DateTime = DateAdd(ss, -DatePart(ss, @DateTime), @DateTime);
Select @DateTime = DateAdd(ms, -DatePart(ms, @DateTime), @DateTime);
-- Add the T-SQL statements to compute the return value here
Select @Result = @DateTime
-- Return the result of the function
RETURN @Result
END
طبعا الفكرة بأنني قمت بإيجاد أجزاء الوقت (الساعة، الدقائق، الثواني، أجزاء الثواني) على الترتيب من التاريخ وطرحها منه. |
|
|
|
| مرحبا عزيزي الزائر |
| لمشاهدة باقي ردود هذا الموضوع, من فضلك قم بتسجيل الدخول او اضغط هنا للتسجيل. |
|
| أدوات الموضوع | |
| انواع عرض الموضوع | |
|
|
|
|
|