我想知道一個簡單的方法來按日期排序列添加,例如:如何按日期添加對列進行排序?
ID|Name|Age|Date
1 John 21 20/03/2012
2 Chart 22 21/03/2012
3 Dart 31 22/03/2012
4 Rat 12 23/03/2012
所以我想補充一個選項進行排序的值的列日的日期,如果你知道我意思。
感謝
我想知道一個簡單的方法來按日期排序列添加,例如:如何按日期添加對列進行排序?
ID|Name|Age|Date
1 John 21 20/03/2012
2 Chart 22 21/03/2012
3 Dart 31 22/03/2012
4 Rat 12 23/03/2012
所以我想補充一個選項進行排序的值的列日的日期,如果你知道我意思。
感謝
在您的SQL查詢,在年底
是的Sql數據庫,排序它在用戶界面,我使用gridview sql數據源來顯示值 – 2012-03-08 18:20:19
如果你有Linq工作使用eouw0o83hf的答案上面貼出來。 Linq允許您在數據來自數據庫之後對數據進行排序,這意味着您不必更改SQL代碼。如果您沒有Linq,則可以更改您的SQL代碼以對數據進行排序。希望這可以幫助。 – c0d3Junk13 2012-03-08 18:25:38
你試圖使用LINQ2SQL把按日期?如果是這樣,你可以這樣做:
var result = from x in MyDataTable
orderby x.Date ascending
select x;
(由descending
如果你想讓它去的其他方式代替ascending
)。
如果您想排序可選它,你可以使用IQueryable<T>
S和可選的排序,一拉:
IQueryable<MyDataTable> GetData(bool sortByDate)
{
var result = from x in DataContext.Table<MyDataTable>
where SomeMatchingClause(x)
select x;
if(sortByDate)
{
result = result.OrderBy(x => x.Date); // or OrderByDescending
}
return result;
}
如果你在SQL查詢直接,只是做
SELECT * FROM MyTable ORDER BY Date ASC
(用DESC
代替ASC
,如果你想以另一種方式)
我不經常建立SQL查詢爲在C#中爲10秒,但如果你想使這個可選,我想你可以增量構建查詢,即使它非常嚴重:
string GetSqlQuery(bool sortByDate)
{
string result = "SELECT * FROM MyTable";
if(sortByDate)
{
result += " ORDER BY Date ASC";
}
return result;
}
我在按鈕上使用SELECT * FROM MyTable ORDER BY日期ASC,sqlconnect,sqlcommand與字符串select並執行標量。什麼都沒有發生 – 2012-03-08 19:38:18
你是否用你的表的實際名稱替換了MyTable?我很不熟悉'SqlConnect'和'SqlCommand',但看起來像'ExecuteScalar'可能不是正確的方法來取回一組表格數據。看這個(http://msdn.microsoft.com/en-us/library/system.data.sqlclient.sqlcommand.executescalar.aspx),看起來好像'ExecuteReader'是你需要做的? – eouw0o83hf 2012-03-08 19:45:03
是的,沒有任何事情發生,行在同一個位置。如果還有其他簡單的方法,請解釋一下如何去做。非常感謝你 – 2012-03-08 19:50:51
SQL表的列?或者如何將數據存儲在變量,數據表等中的列? – 2012-03-08 18:18:27
是'日期'與'添加日期'相同嗎?你使用什麼數據結構?此表是否存在於SQL中?你試過什麼了? – n8wrl 2012-03-08 18:18:34
您使用哪種技術從數據庫中提取數據?你想在源代碼中排序還是在UI中排序?您使用哪種技術來顯示數據? – 2012-03-08 18:18:42