在 Microsoft SQL 中苦苦挣扎了几个小时。
我有 2 张桌子。
Table1
ID | STOCK | STATUS
-----------------------------
1  | 1     | Out
2  | 1     | In
3  | 1     | Out
4  | 2     | Out
5  | 2     | In
Table2
ID | DATE
---------------
1  | 2013-07-01
2  | 2013-07-02
3  | 2013-07-03
4  | 2013-07-01
5  | 2013-07-02
我想用最新的 DATE 和 STATUS 获取最新的 STOCK
-> 结果必须是
结果表
ID| STOCK | STATUS | DATE
-------------------------------
3 | 1     | Out    | 2013-07-03
5 | 2     | In     | 2013-07-02
我做了以下事情:
SELECT Table1.*, Table2.* FROM Table1, Table2 WHERE Table1.ID=Table2.ID
这加入了表,但给出了所有 5 条记录。所以我想我会MAX()像这样使用这个功能
SELECT Table1.*, MAX(Table2.ID),Table2.Date  FROM Table1, Table2 WHERE Table1.ID=Table2.ID GROUP BY Table2.Date
但这不会在查询窗口中运行。