تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
استنتاج الارقام العشوائية في ال SQL Server بواسطة ال TSQL
#1





السلام عليكم ورحمة الله وبركاتة
ان شاء الله المنتدى في تقدم الى الامام بأذنة تعالى
موضوعنا لهذا اليوم كيفية استنتاج ارقام عشوائية في ال TSQL

انتجت لنا مايكروسوفت دالة او ال Function المسماة Rand وهي اختصار لل random (( العشوائية )) وهي تفيد في انتاج ارقام عشرية صحيحة

الصيغة العامة التاية التي تكتب بها هي

RAND ( [ seed ] )


وكمثال جرب الكود التالية كما في الصورة



تفيد هذة الدالة في انشاء ارقام عشوائية ينتجها محرك ال SQL Server مما يسرع لدينا سرعه الاستعلام لان المعالجة تتم فقط في ال SQL Server كما في الشكل اعلاة

هنالك العديد من الطرق لانتاج هذة الرقام وسناخذ الامثلة الكافية اليها

طريقة 1 انتاج ارقام عشوائية بشكل INT

SELECT CAST(RAND() * 1000 AS INT) AS [RandomNumber]

طريقة 2 في حال اردنا رقم عشوائي ثابت عن طريق تحديد الخاصية Seed لنلاحظ المثال التالي

SELECT RAND(1) AS [RandomNumber]

وكفكرة اخرى في انتاج ارقام ثابتة لاحصائيات جدول معين كما في المثال التالي

Select RAND()as [RandomNumber] ,ID_Fied from TBL_name

لاحظ في كل مرة نقوم فيها بعرض الجدول يتغير التعداد

افكار اخرى طريقة 3

انتاج ارقام عشوائية محصورة بين قيمتين جرب الكود التالي

DECLARE @Random INT;

DECLARE @Upper INT;

DECLARE @Lower INT

SET @Lower = 1 —- ادنى قيمة

SET @Upper = 999 —- اعلى قيمة

SELECT @Random = ROUND(((@Upper – @Lower -1) * RAND() + @Lower), 0)

Print @Random

افكار واكواد اخرى استخلاص الرقم العشوائي من تاريخ ووقت الحاسبة

SELECT RAND( (DATEPART(mm, GETDATE()) * 100000 )
+ (DATEPART(ss, GETDATE()) * 1000 )
+ DATEPART(ms, GETDATE()) )

وك دالة اخرى في استنتاج ارقام عشوائية نستخدم NEWID() الصيغة القواعدية لها هي كالتالي

NEWID()

لكن فرقها عن الاولى في انها تنتج ارقام عشوائية بصيغة ال Hexadecimal اي الارقام الستة عشر

لنجرب المثال التالي



لنحاول تقريب النتاج الى عشرية كما في الكود التالي

SELECT CAST(CAST(newid() AS binary(4)) AS int)

وكفكرة في استخدام الرقام العشوائية لدينا بعض مواقع الويب تحتاج الى ادخال اسم العضو ومن ثم ارسال passowrd لهذا الاسم على الايميل

ففكرة الارقام العشوائية سوف تفيدنا هنــا

شكراً لكم وارجوا منكم دعائكم الكريم
المصدر
الرد
تم الشكر بواسطة:


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  SQL server tools to build stored procedures Akif 0 261 16-05-18, 01:25 PM
آخر رد: Akif
  [مقال] النسخ الاحتياطي التلقائي - Auto Back Up SQL Server Databases ابو ليلى 4 2,358 12-05-18, 10:21 AM
آخر رد: houria
  مشكلة حفظ استعلام sql server 2012 an9e1u2 1 372 17-12-17, 10:17 PM
آخر رد: ahmedmansour
  تحويل قاعدة بيانات من Access إلى SQL Server a_senan 6 8,168 13-09-17, 02:00 PM
آخر رد: HAIFA NUMAN
Question [SQL] sql server 2008 fragment Incubus 0 537 20-12-16, 12:10 AM
آخر رد: Incubus
  كورس SQL Server 2008ٌ2 بالعربي أحمد النجار 2 1,841 07-11-16, 04:29 PM
آخر رد: thevirus
  [SQL] SQL SERVER 2012 adel27 1 1,164 21-12-15, 09:08 PM
آخر رد: عمر المستشار
  التعامل مع قواعد البيانات Sql Server 2005 خطوة بخطوة Mr. DotNet 10 7,935 29-03-15, 12:31 PM
آخر رد: العيد1403
  استنتاج الارقام العشوائية في ال SQL Server عمر المستشار 1 1,834 01-06-14, 11:03 AM
آخر رد: Sajad
  تنصيب ال SQl Server من خلال Configration File عمر المستشار 2 2,523 14-01-14, 04:58 PM
آخر رد: myalsailamy

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم