簡化SQL計算之實現優先隨機更新

2021-08-27 21:40:23 字數 1003 閱讀 9822

目標:隨機更新表

tmp_survey_tran_bz_3_working

中符合條件的

20條記錄,將

quota_include_ind

字段更新為「

y」。更新時有優先順序,如果

customer_type='r'

的記錄大於

20條,則隨機更新這裡的

20條記錄。如果

customer_type='r'

的記錄小於

20條(比如

15條),則更新這

15條,並從

customer_type<>'r'

的記錄中隨機更新5條。

部分源資料如下:

集算器指令碼:

:執行sql

,按引數取出符合條件的記錄的主鍵。其中a1是

customer_type='r'

的記錄,a2是

customer_type<>'r'

的記錄。

a3:根據a1

中的記錄數量計算出需要更新的記錄主鍵。

a1.sort(rand())

表示對a1

隨機排序,

to(20)=[1,2…20]

,表示取前

20條。運算子

|可以將兩個集合縱向合併。計算結果如下:

a1,a2,a3

的計算結果分別如下:

a4:按照a3

更新資料表,

@u表示只生成

update

語句。

簡化SQL計算之字母分段

表 rbd dtl 的rbp value 字段儲存著字串 all 和一些字母,現在要將該字段拼成分段的字串,形如 a f,h,j k,n o,q s,u v,x z 源資料如下 具體規則是 如果rbp value all 則捨去該值。如果rbp value 前後都是連續的字母,則取第乙個字母和最後乙...

Android之實現具有優先順序的執行緒池

在android開發中為了復用執行緒以及節約執行緒開銷,執行緒池是使用較多的一種方法,有時也會有這樣的需求,不同的執行緒執行任務的緊急度是不一樣的,後加入執行緒池佇列的任務可能需要優先處理,在threadpoolexecutor的建構函式中需要傳遞乙個繼承blockqueue的子類。在sdk中已經提...

Python符號計算之實現函式極限的方法

sympy是符號數學的python庫。它的目標是成為乙個全功能的計算機代數系統,同時保持 簡潔 易於理解和擴充套件 coding utf 8 函式極限 import sympy sympy.init printing from sympy import i,pi,oo import numpy as...