الانتقال إلى المحتوى الرئيسي
  • numbers() – تعيد جدولًا لا نهائيًا يحتوي على عمود number واحد (UInt64) يضم أعدادًا صحيحة بترتيب تصاعدي، بدءًا من 0. استخدم LIMITOFFSET اختياريًا) لتحديد عدد الصفوف.
  • numbers(N) – تعيد جدولًا يحتوي على عمود number واحد (UInt64) يضم أعدادًا صحيحة من 0 إلى N - 1.
  • numbers(N, M) – تعيد جدولًا يحتوي على عمود number واحد (UInt64) يضم M عددًا صحيحًا من N إلى N + M - 1.
  • numbers(N, M, S) – تعيد جدولًا يحتوي على عمود number واحد (UInt64) يضم قيمًا ضمن [N, N + M) بخطوة S (أي نحو M / S صفًا، مع التقريب للأعلى). يجب أن تكون S >= 1.
هذا مشابه لجدول النظام system.numbers. ويمكن استخدامه للاختبار وتوليد قيم متتابعة. الاستعلامات التالية متكافئة:
تُعدّ الاستعلامات التالية مكافئة أيضًا:
الاستعلامات التالية متكافئة أيضًا:

أمثلة

أول 10 أعداد.
أنشئ تسلسلاً من التواريخ من 2010-01-01 إلى 2010-12-31.
اعثر على أول UInt64 >= 10^15 تكون في sipHash64(number) الخاصة به 20 بتًا صفريًا متتاليًا في النهاية.

ملاحظات

  • لأسباب تتعلق بالأداء، إذا كنت تعرف عدد الصفوف التي تحتاج إليها، ففضّل الصيغ المقيّدة (numbers(N), numbers(N, M[, S])) على numbers() / system.numbers غير المقيّدة.
  • للتوليد المتوازي، استخدم numbers_mt(...) أو الجدول system.numbers_mt. لاحظ أن النتائج قد تُعاد بترتيب غير محدد.
آخر تعديل في ٢٥ يونيو ٢٠٢٦