我有這個小程序在C#中不斷髮送數據到我的一個表(DataTable)。數據格式總是和長度一樣。如何在SQL Server中選擇特定的ID和時間
有4個不同的ID
s我在這裏工作:2000,2001,2002,...這些都在不同的表中。 ID
列是我的DataTable
列中的外鍵。
最初我以爲我可以檢索我的DataTable
中最後一個插入的行,針對特定的ID
。但是,我意識到insert語句會按照發送順序將值分配到數據庫中。因此,我決定簡單地採取ID
並根據時間戳獲取最後一行數據。
我試過使用DatePart
但這限制了我只有幾個小時。我想顯示一個基於小時和分鐘的時間。例如:2002 between '4:30:00' and '5:30:00'
。
此外,我是否必須做一個加入聲明,因爲我會從另一個表中調用ID
列?
我用盡這至今:`
use LogDatabase
select * from dbo.DataTable
join CustomerTable
on(Customer_ID = CustIDFk)
where DATEPART(HH, TimeStamp)between 4 and 5 `
傳入的數據串看起來很多這樣的:
3-13-2011 3:30:21 2002: 45 Temp:81 Albany NY etc....
我已經在我的DataTable取得數據的每個字段列。如您所見 2002是我的CustomerTable中稱爲Customer_ID的ID。我已將此 設置爲CustomerTable中的主鍵,並且CustIDFk是與Customer_ID鏈接 的外鍵。正如您所看到的,我試圖將我的客戶表與我的Data 表加入以指定ID。日期部分語句允許用在其他任一小時或分鐘,得到時間範圍 但不允許「之間4:30和5:30。
您需要以顯示一些示例數據和目前已撰寫的任何疑問 - 即使它們不工作 – Yuck 2012-03-20 14:21:23
我同意Yuck。目前,這對我沒有多大意義,表格定義和一些示例數據將回答一整車的問題,我們將不得不要求您瞭解您的問題。 – 2012-03-20 14:36:53
@Rick:請**不要**代碼示例和類似的東西到評論 - **真的很難**閱讀!請改爲:**更新**你的原始l問題提供更多信息! – 2012-03-20 14:42:08