从数据库表获取两个日期之间的记录,而无需递增时间戳列

时间:2019-01-21 18:59:35

标签: mysql sql-server sql-server-2008 sql-server-2016

我有一个没有时间戳列的表: 其数据如下:

 name     city
------  ------
 Deepak  Pune
 amit    Mumbai
 raj     Chennai 

第二天,我们有了以下数据:

    name    city
   -----  ------  
   Deepak  Chennai
   amit    Mumbai
   raj     Chennai 
   vikas   Panjab

现在我要查找被修改,插入或删除的那些记录。

例如:         命名城市        ----- ------
       Deepak Chennai(从浦那更新为金奈)        阿米特·孟买        拉奈(Raj Chennai)        vikas Panjab(插入了新记录)

但是我不想比较,因为表有很多列,因为有很多列和十亿条记录。 这就是为什么我要在两个时标之间选择记录,所以我知道哪些被修改了。

所以O / P:

name  City
---- ------
Deepak Chennai
vikas  Panjab

请提出我需要使用的内容。

1 个答案:

答案 0 :(得分:0)

据我所知,您有一个像users这样的数据表

Name Null? Type         
---- ----- ------------ 
NAME       VARCHAR2(10) 
CITY       VARCHAR2(10)



NAME    CITY
----    -----
raj     chennai
deepak  pune
amit    mubai
vikas   punjab

您可以使用this。它可能会帮助您。

SELECT *
FROM (SELECT u.*,ROWNUM FROM users u ORDER BY ROWNUM DESC)
WHERE ROWNUM=1;

结果将是这样

 NAME     CITY   ROWNUM
 -----    -----  -----
 vikas    punjab   4