我正在一個應用程序的asp.net窗口應用程序的數據存儲在excel工作表。 我有在Excel中的片材: Sheet 2中(STATE,點) 點的基礎上,所述的每個狀態獲得已以下標準獎牌: - 黃金:7分 銀:5分 青銅:4分如何使用訂單的基礎上的3 condtiton
我想根據他們的獎牌類型獲得每個州的總獎牌,這意味着擁有最多金牌的州應該是最高的。如果兩個州的金牌數相同,那麼擁有更多銀牌的州應該在更高的位置上。並且如果2 STATE擁有相同數量的銀牌,那麼擁有更多銅牌的STATE應該位於更高的位置。我做了以下查詢: -
OdbcConnection con = new OdbcConnection(ConfigurationManager.ConnectionStrings["SportTech"].ConnectionString);
//string query = "select STATE,sum(Point) as MEDAL from [Sheet2$] Group by STATE order by sum(Point) desc";
//string query = "SELECT STATE,SUM(Point) AS MEDAL,(CASE Point == 7: 1 END) AS GoldCount FROM [Sheet2$] GROUP BY STATE ORDER BY SUM(Point) DESC";
string query = "select STATE,sum(Point) as MEDAL, sum(IIF(point = 7,1,0)) as Gold, sum(IIF(point = 5,1,0)) as Silver, sum(IIF(point = 4,1,0)) as Bronce from [Sheet2$] group by STATE order by sum(IIF(point = 7,1,0)) desc";
OdbcCommand cmd = new OdbcCommand(query, con);
OdbcDataAdapter da = new OdbcDataAdapter(cmd);
con.Open();
DataTable dt = new DataTable();
da.Fill(dt);
con.Close();
但查詢不能正常工作,如果有類似的金卡或銀卡2 STATE medals.kindly幫助me..Thanx
我應用了代碼格式化,因爲它是一個真正的混亂弄清楚。 – roland
它現在格式化了。現在好心的幫我解決這個問題 –