我试图在昨天(不是硬编码)的订单表上获取 IDS 的计数,其中表中的日期对应于下订单的时间。
我的桌子看起来像这样
orders (
order_id INT PRIMARY KEY
, user_id INT
, date_created DATE
, order_value FLOAT
, city_id INT
)
Run Code Online (Sandbox Code Playgroud)
我已使用此代码在表中获取今天的日期 -
Select *,DATEADD(dd, DATEDIFF(dd, 0, getdate()), 0) as Today
From orders
Run Code Online (Sandbox Code Playgroud)
这很好用,但是当我尝试尝试下面的 where 子句时
Select *,DATEADD(dd, DATEDIFF(dd, 0, getdate()), 0) as Today
From orders
where Today -1 = date_created;
Run Code Online (Sandbox Code Playgroud)
我收到这个错误“无效的列名‘今天’”所以我的问题只是如何让这个表识别我作为新列添加的日期并允许我对其执行工作?
提前致谢
每次通过 SSMS 工具连接到 SQL 服务器时,我都会遇到同样的问题。如果我一直在编写脚本并关闭我的笔记本电脑一段时间,当我回来并重新连接时,它无法识别我正在处理的数据库中的表。通常我必须右键单击表名并选择前 1000 行才能在缓存中记住它。这是一种解决方法,我知道我不需要做,因为我遗漏了一些东西或没有正确地做一些事情。
有小费吗?