[.NET] GridView 顯示總和問題

看板Visual_Basic作者 (竹科學友哥)時間8年前 (2016/03/04 18:37), 編輯推噓4(408)
留言12則, 3人參與, 最新討論串1/1
請輸入專案類型(網站專案或者應用程式專案):vb.net VS2015 各位版友好 DB內有個tableA如下所示: id name price city ---------------------- 1 AAA 1000 台北 2 BBB 1000 台北 3 CCC 1000 台中 1 AAA 1000 台北 3 CCC 1000 台中 4 DDD 1000 台中 我使用GridView想顯示出的結果如下: name SUM(price) city ------------------------ AAA 2000 台北 BBB 1000 台北 CCC 2000 台中 DDD 1000 台中 我使用下面的SQL在Microsoft SQL Server Management Studio上跑是OK的 SELECT name, SUM(price), city FROM tableA GROUP BY name, city 但是我放到.aspx上會顯示出錯誤,錯誤資訊如下: 在選取的資料來源上找不到名稱為 'steps' 的欄位或屬性。 描述: 在執行目前 Web 要求的過程中發生未處理的例外狀況。請檢閱堆疊追蹤以取得 錯誤的詳細資訊,以及在程式碼中產生的位置。 例外狀況詳細資訊: System.Web.HttpException: 在選取的資料來源上找不到名稱為 'steps' 的欄位或屬性。 若將SQL改為SELECT name, SUM(price), city FROM tableA 在GridView則會顯示資料,不會發生上述錯誤訊息 .aspx部分程式碼如下: <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" Width=100% DataSourceID="SqlDataSource1" AllowPaging="True" PageSize="20" AllowSorting="True"> <Columns> <asp:CommandField ButtonType="Button" ShowSelectButton="True" /> <asp:BoundField DataField="name" HeaderText="名字" SortExpression="name" /> ............ </Columns> </asp:GridView> <asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ...... %>" ProviderName="<%$ ........ %>" SelectCommand="SELECT name, SUM(price), city FROM tableA GROUP BY name, city"> <SelectParameters> .......... </SelectParameters> </asp:SqlDataSource> 請問該怎麼修改才會正確的顯示出來呢? PS.若能照著id或是city的順序排列會更好 麻煩了,謝謝 <(_ _)> -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 61.216.21.87 ※ 文章網址: https://www.ptt.cc/bbs/Visual_Basic/M.1457087860.A.657.html

03/04 20:56, , 1F
在選取的資料來源上找不到名稱為 'steps' 的欄位或屬性
03/04 20:56, 1F

03/04 20:56, , 2F
我猜是sql撈的欄位名稱沒有steps DataField卻有steps
03/04 20:56, 2F

03/04 22:32, , 3F
同樓上,你直接用關鍵字搜尋一下code吧
03/04 22:32, 3F

03/05 17:32, , 4F
其實steps 就是price 我PO文章的時候改了名詞 兩個是一樣
03/05 17:32, 4F

03/05 18:24, , 5F
sum(price)加總沒給他欄位名稱
03/05 18:24, 5F

03/05 18:25, , 6F
你整段語法進sql執行一次就知道問題在哪了
03/05 18:25, 6F

03/05 20:59, , 7F
我在mssql執行是ok的 但的確會顯示沒欄位名稱
03/05 20:59, 7F


03/05 21:00, , 9F
我是從這邊參考SUM的用法 請問SQL語法該怎麼修正?
03/05 21:00, 9F

03/06 19:12, , 10F
sum(price) as price
03/06 19:12, 10F

03/06 19:13, , 11F
不過我都會省略as直接sum(price) price
03/06 19:13, 11F

03/07 10:44, , 12F
已解決 謝謝
03/07 10:44, 12F
文章代碼(AID): #1MsMLqPN (Visual_Basic)