![](/img/trans.png)
[英]MSACCESS: SELECT “How many days ago” {can return: today, yesterday, 2 days ago, …}, field1, field2, fieldN FROM mytable
[英]PostgreSQL Script For Finding How Many Days Ago Someone Was Called
我是第一次使用PostgreSQL,並且在任務上有些卡住。 我試圖找出多少天前有人通過電話打來了電話,例如客戶中的一位客戶。 我已經在客戶端表中創建了一個名為“ lastcall”的列,我希望將其定義為NOW()-createdAt(其中createdAt是調用中的一列,該列帶有時區)。 從我所看到的語法來看,這可能是合理的,但是我不確定如何使它100%合法。
SELECT lastcall (NOW()-A≥0) as T
FROM Clients
WHERE A is createdAt
FROM Calls
任何有關將其變為現實的建議都將受到贊賞! 另外,我相信我們將需要對createdAt
列進行排序,以便我們可以找到最近的調用與現在之間的距離-我對此也有些迷失。
這里有問題的兩個表是Clients
和Calls
。 客戶端具有60列值得描述客戶端的屬性,包括主鍵ID。 Clients(id)是Calls列clientid的外鍵。 呼叫有7列,分別是'id','clientname', 'clientphone', 'clientid','createdAt','updatedAt','overview'.
'createdAt'
'updatedAt'
'createdAt'
和'updatedAt'
是帶有時區的時間戳。 'id'
是主鍵。 除了clientid和Clients(id)外,沒有其他列相關。
要以postgres獲取當前日期,請使用CURRENT_DATE
嘗試類似這樣的事情。(它假設在“客戶”和“呼叫”上有一個將兩個表都關聯起來的聯接列)
select current_date-lc.createdAt::date as T
from Clients c
inner join Calls lc
on c.id=lc.clientid
根據您的更新,如果您只需要clientid和最后一次調用,則可以執行此操作。
select clientid,current_date-createdAt::date
from Calls
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.