كيفية تطبيق أقصى وظيفة لكل صف في KDB؟
سؤال
أريد التأكد من جميع القيم في العمود x
ليست أصغر من 0.5، لذلك أفعل:
update x:max (x 0.5) from myTable
ولكن هذا يعطي خطأ (في استوديو لـ KDB+):
An error occurred during execution of the query.
The server sent the response:
type
Studio Hint: Possibly this error refers to wrong type, e.g `a+1
ما هو الخطأ؟
المحلول
يمكنك تجربة استخدام |
q)update x|0.5 from myTable
نصائح أخرى
يجب أن تعمل.عملت معي.هذا هو الاستعلام الذي استخدمته للاختبار:
update x:max(x;0.5) from myTable
- التحقق من الفاصلة المنقوطة في الوظيفة القصوى
جرب ال ناقلات KDB مشروطة يشبه الحالة عندما في SQL:
q)t:([] a:6?.9)
q)t
a
---------
0.4237094
0.5712045
0.8705158
0.2075746
0.8549775
0.3951729
q)update ?[a<0.5;0.5;a] from t
a
---------
0.5
0.5712045
0.8705158
0.5
0.8549775
0.5
q)
لا تنتمي إلى StackOverflow