我确定如何做到这一点,并寻求一些帮助。在SQL中,我需要一个类似于此的查询获取最后订购日期的所有人ID大于x(预定义日期)。我尝试过使用Max(),但它似乎没有正常工作。
感谢
答案 0 :(得分:3)
像
这样的东西SELECT ID 来自PeopleTable 在哪里LAST_ORDER_DATE> '01 -Jun-2009'
如何处理日期取决于您的RDBMS
答案 1 :(得分:3)
我猜你不知道最后的订单日期是什么?
Select people_id
, Max(Order_Date) as last_order_date
from orders_table AS O
Group By people_id
Having Max(Order_Date) > @CutOff_Date
答案 2 :(得分:1)
简单地:
从人员中选择*,其中lastOrderDate> @InputDate
答案 3 :(得分:1)
这实际上取决于表结构。如果users表中有“Last Order Date”列,则:
SELECT UserID
FROM Users
WHERE LastOrderDate > 'predefined date'
如果您需要在“订单”表中找到它,这可能是正确的
SELECT DISTINCT UserID
FROM Orders
WHERE OrderDate > 'predefined date'
或者如果您需要考虑用户身份,那么......
SELECT DISTINCT O.UserID
FROM Orders O
INNER JOIN Users U ON U.UserID = O.UserID
WHERE O.OrderDate > 'predefined date'
AND U.UserStatus = 1
答案 4 :(得分:0)
使用WHERE
子句。
答案 5 :(得分:0)
当然这需要更多信息...... 您是否加入订单表? 你可以提供一些ddl,否则你拥有的东西非常简单:
SELECT blah1, blah2...FROM MyTable WHERE LastOrderDate > x
没有更多的信息就没有认真的了......
答案 6 :(得分:0)
SELECT PERSON_ID FROM ORDERS WHERE ORDER_DATE>DATE('2000-01-01')
答案 7 :(得分:0)
我已经得到了它的工作:
SELECT PeopleId FROM Orders Group By PeopleId Having Max(OrderDate)<'9/23/2009'