2015-07-13 74 views
-5

我有如下表在我的數據庫如何爲這種情況編寫SQL查詢?

--------------------- 
|ID |Date  
--------------------- 
|15 |2015-07-01 
|15 |2015-07-02 
|15 |2015-07-03 
|18 |2015-07-04 
|18 |2015-07-05 
|22 |2015-07-06 
|22 |2015-07-07 
|22 |2015-07-08 

我這個代碼寫這個查詢

select * from table where date = "2015-07-04"; 

我可以得到當前的ID,但如何選擇一張ID到我的電流id。

我只知道日期並想要檢索數據。 像我有日期= 2015-07-03和那個日期編號= 15 所以我想包含所有行相關的id = 15和id旁邊的id = 15即id = 18;

+0

有了這段代碼,你不會得到當前的id,你會得到提供日期的所有行。 –

+0

你是什麼意思「*通過此代碼我可以得到當前ID *」?根據你的輸入數據,這個查詢應該返回第4行的數據。這種情況下* current * id是什麼,curernt *旁邊有*是什麼? –

+0

'next id'是什麼意思?下一個同一日期?下一個ID是在第二天的ID中隨機選擇的?如果第二天沒有進入呢? – Paolo

回答

1

不確定。但是,好像你正在尋找這個

select max(id)+1 from yourTable; 

如果使用Oracle,然後創建SEQUENCE並使用NEXTVAL獲得一個序列值。如果您使用的是SQL Server,則可以選擇AUTO INCREMENT選項。

相關問題