我有两个数据库表,它们之间是一对多的关系。数据如下:
select * from student, application
结果集:
+-----------+---------------+---------------------+
| StudentID | ApplicationID | ApplicationDateTime |
+-----------+---------------+---------------------+
| 1 | 20001 | 12 April 2011 |
| 1 | 20002 | 15 May 2011 |
| 2 | 20003 | 02 Feb 2011 |
| 2 | 20004 | 13 March 2011 |
| 2 | 20005 | 05 June 2011 |
+-----------+---------------+---------------------+
我希望删除除最新的应用程序外的所有应用程序。换句话说,每个学生只能有一个与其关联的应用程序。使用上述示例,数据应该如下所示:
+-----------+---------------+---------------------+
| StudentID | ApplicationID | ApplicationDateTime |
+-----------+---------------+---------------------+
| 1 | 20002 | 15 May 2011 |
| 2 | 20005 | 05 June 2011 |
+-----------+---------------+---------------------+
我该如何构建DELETE语句以过滤出正确的记录?
[plsql]
,我认为这是Oracle。 - NullUserExceptionDESC student; DESC application
)? - NullUserException