首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >添加一个列,根据日期[借来的日期]给出否或是

添加一个列,根据日期[借来的日期]给出否或是
EN

Stack Overflow用户
提问于 2019-11-19 07:52:14
回答 5查看 82关注 0票数 0
  1. 基本上是我想要的列,它将出现在借来日期
  2. 旁边,这个列将被称为状态,它将有两个值
  3. ,值将取决于这样一个条件:如果今天的日期比借来的日期大3天,则状态栏=过期,否则应该显示未过期的

这是我的密码。

代码语言:javascript
复制
SELECT dbo.borrowing.[book_id], 
       dbo.bookregistration.[book_title], 
       dbo.bookregistration.[book_category], 
       dbo.bookregistration.[book_type], 
       dbo.bookregistration.edition, 
       dbo.borrowing.[borrowed_date], 
       dbo.borrowing.[adm_no] 
FROM   dbo.bookregistration 
INNER JOIN dbo.borrowing ON dbo.bookregistration.[book_id] = dbo.borrowing.[book_id] 
EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2019-11-19 08:35:07

我们开始:

代码语言:javascript
复制
SELECT dbo.Borrowing.[Book_ID], dbo.BookRegistration.[Book_Title]
    , dbo.BookRegistration.[Book_Category], dbo.BookRegistration.[Book_Type]
    , dbo.BookRegistration.Edition, dbo.Borrowing.[Borrowed_Date] AS [Borrowed_Date]
    , case when DATEADD(DD,3,[Borrowed_Date]) > GETDATE() THEN 'Not Overdue' ELSE 'Overdue' END AS Status
    , dbo.Borrowing.[Adm_NO]
FROM dbo.BookRegistration
INNER JOIN dbo.Borrowing ON dbo.BookRegistration.[Book_ID] = dbo.Borrowing.[Book_ID]
票数 0
EN

Stack Overflow用户

发布于 2019-11-19 07:57:13

这是你的问题。First我们将用alias缩短它,使用select case使第二更短

,这是您的完整查询.

代码语言:javascript
复制
SELECT t2.[Book_ID]
    , t1.[Book_Title]
    , t1.[Book_Category]
    , t1.[Book_Type]
    , t1.Edition
    , case when t2.[Borrowed_Date] < getdate() - 3 then 'OverDue' else 'Not Overdue' end as [Status]
    , t2.[Adm_NO]
FROM  dbo.BookRegistration t1 
INNER JOIN dbo.Borrowing t2 ON t1.[Book_ID] = t2.[Book_ID]
票数 1
EN

Stack Overflow用户

发布于 2019-11-19 07:57:30

您可以使用DATE_ADD和CASE语句来实现如下所示的需求-

代码语言:javascript
复制
SELECT        
    CASE 
        WHEN DATE_ADD([Borrowed Date], INTERVAL 3 DAY) > NOW() THEN 'Not Overdue'
        ELSE 'Overdue'
    END Status
FROM dbo.BookRegistration
INNER JOIN dbo.Borrowing 
    ON dbo.BookRegistration.[Book_ID] = dbo.Borrowing.[Book_ID]
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58929038

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档