我們有不同的過程,如設計,樣品,模擬,凸版印刷,追蹤,印刷。但某個工作可以隨機做任何工作。 我想選擇打印進程,但在此之前,我想檢查以前的過程是否已完成。檢查上一步如果狀態已完成,並顯示如果下一步如果完成
我想檢查前面的步驟,如果已完成如果完成顯示下一個過程。
狀態含義:
等於FINISH
等於尚未FINISH
我用下面的查詢,但它不會工作。
SELECT *
FROM process
WHERE status = 0
AND (SELECT * FROM process WHERE step=step-1 AND status=1)
進程表
+-----------+----------+------------+-----------+----------+
| ID | Job Code | Job Name | Step | Status |
+-----------+----------+------------+-----------+----------+
| 1 | J0003 | Designing | 0 | 1 |
| 2 | J0003 | Sample | 1 | 1 |
| 3 | J0003 | Printing | 2 | 0 |
+-----------+----------+------------+-----------+----------+
結果:
+-----------+----------+------------+-----------+----------+
| 3 | J0003 | Printing | 2 | 0 |
+-----------+----------+------------+-----------+----------+
這應該是這個結果,因爲第一和第二個步驟已經完成。完成,爲什麼因爲行status
的值爲1.
如果第二個進程樣本的狀態值等於0,則結果爲空或顯示爲空。
可以增加一列,更新它時,服務用戶,其訂購。 –
「我想選擇打印過程,但在此之前我想檢查前面的過程是否已經完成。」以前的過程是「追蹤」嗎?如果是這樣,爲什麼我在查詢中看不到? –
你能展示預期的結果嗎? –