在做流程審批的時候,通常會出現某一層有多個審批人的情況,這個時候需要所有人都通過才會進入到下一步
數據結構如下圖表格所示
每一個審批申請對應一個apply_id
serial_no相同的代表是同一層級審批人
approval_status是審核狀態
下面我們可以用一個SQL來進行這個判斷
SELECT CASEWHEN COUNT(*) = SUM(CASE WHEN approval_status = 1 THEN 1 ELSE 0 END)THEN 1ELSE 0END AS approval_status
FROM approval_record
WHERE apply_id = 1
AND serial_no = 2;
可以看到 apply_id 為1 serial_no 為2的因為還有一個人沒有審核完成返回的是0
我們再看一下apply_id 為1 serial_no 為1的,因為都審核通過了所以返回的就是1了