الشيكات المنطقية وقضايا الأداء داخل عدد (FOO متميز)

StackOverflow https://stackoverflow.com//questions/22075809

  •  23-12-2019
  •  | 
  •  

سؤال

لدي استفسار منتظم ومكلف للغاية أحتاج إلى تشغيله، وللسوء الحظ، يجب أن أنضم إلى نتائج هذا الاستعلام مع نفس الاستعلام الدقيق تقريبا من أجل الحصول على نسبة ... مما أدى إلى استخدام استعلام يأخذ 3 دقائق لتشغيل. هذا هو ما أود القيام به .... (على افتراض أن تجنب الانضمام سيسرع وقت الاستعلام)

giveacodicetagpre.

هذا هو ما أجبرته على القيام به ....

giveacodicetagpre.

ثلاث مشاكل / أسئلة:

  1. يبدو أنه يجب أن يكون هناك طريقة لاستعلام كبير يمكن أن يؤدي عدد (حقل متميز) مع بعض المنطق الشرعي المضمن. هل هناك طريقة لتجنب القيام بالانضمام في هذا السيناريو أعلاه؟
  2. عد متميزة بقيمة أكبر من 100000 فشل بالنسبة لي. أود أن أكون قادرا على القيام بعدد مميز بقيمة 10،000،000. هل هناك مشكلة في الأداء المعروفة مع عدد القيم المميزة والكبيرة؟ هل يتم تناول هذا؟
  3. هل هناك خطط لتتمكن من استخدام اسم الحقل المعلن / المحسوب ضمن تحديد في عبارة أخرى داخل هذا الاختيار؟ في الأعلى مثال، أود استخدام أسماء النتائج بدلا من تكرار الصيغة في العبارة المستديرة. (أي أود تحديد

    Total_sunbutter_meals_per_day / Total_meals بدلا من

    عدد (شخص مميز، حيث يحتوي الجزء العلوي (المكون) على "زبدة الشمس"، 100000) / عدد (شخص متميز، 10000000)

  4. شكرا مقدما على المساعدة!

هل كانت مفيدة؟

المحلول

السؤال 1:

يمكنك إنشاء استعلام داخلي مع حقولين متميزين على النحو التالي:

giveacodicetagpre.

السؤال 2:

في bigquery، عدد (متميز) إرجاع نتيجة تقريبية. إذا قمت بزيادة العتبة التي يتم فيها إرجاع النتائج الدقيقة، فسوف تؤذي الأداء (وفي النهاية تتسبب في فشل استفسارك) لأن عامل واحد يحتاج إلى تتبع كل هذه القيم المميزة. انظر عدد bigquery (قيمة مميزة) VS عدد (القيمة) للحصول على مزيد من المعلومات.

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

لاحظ أنك ستحتاج إلى معالجة المشكلة في السؤال 1 بطريقة مختلفة قليلا. شيء مثل:

giveacodicetagpre.

السؤال 3:

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

بدلا من:

giveacodicetagpre.

يمكنك الكتابة:

giveacodicetagpre.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top