我已存储在数据库中作为如何扭转查询或c#词语
位置的顺序
印度,塔米尔纳杜,奈,Annanagar
而我在网格结合查看它-111显示为 '印度,泰米尔纳德邦,金奈,安纳加格'这种格式。
但我需要以这种格式显示为'Annanagar,Chennai,Tamilnadu,India'。如何在查询或c#中执行这个相反的顺序。
注意:这是存储在一列'印度,泰米尔纳德邦,金奈,Annanagar'用逗号分隔。
我已存储在数据库中作为如何扭转查询或c#词语
位置的顺序
印度,塔米尔纳杜,奈,Annanagar
而我在网格结合查看它-111显示为 '印度,泰米尔纳德邦,金奈,安纳加格'这种格式。
但我需要以这种格式显示为'Annanagar,Chennai,Tamilnadu,India'。如何在查询或c#中执行这个相反的顺序。
注意:这是存储在一列'印度,泰米尔纳德邦,金奈,Annanagar'用逗号分隔。
我相信OP提供的位置例如是从DB只是一个结果他正在寻找这样的东西:
string location = "India,Tamilnadu,Chennai,Annanagar";
string[] words = location.Split(',');
Array.Reverse(words);
string newlocation = String.Join(",", words);
Console.WriteLine(newlocation); // Annanagar,Chennai,Tamilnadu,India
在SQL中,您可以使用查询的顺序。
SELECT * FROM location
ORDER BY City
这将返回City列按字母顺序排列的结果。
如果你想颠倒顺序,这样它会从ž下单 - >一个,你会做
ORDER BY City DESC
它通常是一个好主意,申请某种在你的查询订购的,这将是用于显示,否则结果会以一个随机的非确定性顺序返回,这很少是您想要的。
在SQL语法:
SELECT location FROM locations ORDER BY location ASC // server side sorting
或者,如果你有你的结果在一个DataTable,你可以这样做:
table.DefaultView.Sort = "location ASC"; // client side in-memory sorting
你问如何使串局部性,市,州,国家,当你有它存储在相反的顺序?那么你不能使用排序来做到这一点。
如果您将所有值存储在单个字段中作为逗号分隔值,则在C#中,可以通过逗号分隔字符串作为分隔符,然后通过使用逗号以相反顺序附加项来再次加入它作为分隔器。
使用C#我们有:
var arr = new[] { "India", "Tamilnadu", "Chennai", "Annanagar" };
使用LINQ:
var q = from location in arr
orderby location ascending // or descending
select location;
使用扩展方法:
var q = arr.OrderBy(l => l);
var q = arr.OrderByDescending(l => l);
但这不是单独存储以作为orderby。它被联合储存在一个专栏中,分别是“印度,泰米尔纳德邦,金奈,安纳那加尔” – Innova 2010-06-07 10:48:20