SQL-编写脚本以显示项目名称和日期

问题描述 投票:0回答:2

我是SQl的新手并且正在进行一些练习。我正在尝试编写脚本但需要一些帮助,如果有人可以帮我解决下面的主题,我会很感激。

表结构

**Project**
    ID(PK)  NAME      Due_Date
    1       Alpha     1/1/2040
    2       Bravo     3/1/2030
    3       Charlie   2/1/2017
    4       Delta     4/1/2017

*Employee*
ID(PK)  NAME
1       Kevin
2       Mike
3       Eric
4       Ira
5       Peter

*Project Assignment*
ID(PK)  ProjectID(FK)   EmployeeID(FK)
1       1               1
2       1               2
3       2               2
4       2               3
5       3               3
6       3               4
7       1               3

问题编写一个脚本,该脚本将返回所有项目名称以及剩余的时间(以天为单位),直到它们到期为止尚未完成的所有项目。

sql sql-server
2个回答
1
投票

如果您的问题被正确询问,那么您只需要项目表。但我怀疑这是你想要的。

SELECT Name, 
       DATEDIFF (DAY, GETDATE(), Due_Date) AS DaysRemaining
FROM Project
WHERE Due_Date > GETDATE()

如果您需要员工数据,请调整您的问题。


0
投票

根据我的理解,我这样做,

  select pa.ID,e.NAME,p.NAME,p.Due_Date, DATEDIFF (DAY, GETDATE(), Due_Date) AS 
  DaysRemaining from 
  Project_Assignment pa inner join project p
  on pa.projectid = p.id
  inner join Employe e
  on pa.EmployeeID = e.ID
  and p.due_date > getdate()

还原我需要的任何澄清......

© www.soinside.com 2019 - 2024. All rights reserved.