如何按日期添加对列进行排序?
我想知道一个简单的方法来按日期排序列添加,例如:如何按日期添加对列进行排序?
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