簡體   English   中英

SQL 查詢兩個表/困難

[英]SQL Query with two Tables / difficult

我有一個數據庫,其中記錄了員工的正常工作時間。 這一方面通過 avaible_week 表完成,另一方面通過 avaible_daily 表完成。 在周表中記錄了員工每周的標准工作時間。 如果某人正在度假或生病,這會出現在每日表格中。

某人是否有空記錄在狀態中 0=不可用 1=可用

現在我們想在 SQL 查詢中顯示在某一天有空的員工。

使用SELECT short FROM avaible_week WHERE day=1 AND hour =8

我得到了此時可用的縮寫。 但是我如何將 output 與另一個表聯系起來,其中有人不可用?

Week Table:
|id|short|day|time|state|
|1 |XY   |1  |8   |1    |

Day Table:
|id|short|day       |time|state|
|1 |XY   |09-04-2022|8   |0    |

注意:我仍然有包含名稱和時間的表,但我可以稍后自己實現 EQUI-JOIN。

我可以建議您嘗試這種方法並進行必要的修復:

SELECT short FROM available_week WHERE (day=1 AND hour =8) 
NOT IN (SELECT short FROM available_day WHERE state=0 AND day='2022-04-09') ;

這應該首先 select 全部來自 available_week,然后刪除 available_day 中 state=0 的那些。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM