【问题标题】:SUM of a access database column in JSP?JSP中访问数据库列的总和?
【发布时间】:2014-02-21 01:02:18
【问题描述】:

我正在尝试获取我的 MS Access 数据库中某列的总和。在我的 JSP 代码中,我设法获取了列中的值,但我无法打印列的总和。请看下面的代码。我的 TABLE_NAME 是 'Jobs' 和 COLUMN_NAME 我想要的总 SUM 是 'Order_Amount'。

   <sql:query dataSource="${bookdB}" var="result4">
    SELECT SUM(Order_Amount) FROM Jobs;
   </sql:query>

  <c:forEach var="column" items="${result4.rows}">
   <tr style="position:absolute; left:280px; top:277px;">    
    <td>Live Job(s) Value: <c:out value="${column.Order_Amount}"/></td> 
   </tr>
  </c:forEach> 

任何帮助将不胜感激。谢谢。

【问题讨论】:

  • 不确定这是否可行,但您可以尝试 select sum(Order_Amount) as s from Jobs 和他们 c:out value="$column.s"
  • 感谢您的回复,“我收到 {Microsoft][ODBC Microsoft Access Driver] 条件表达式中的数据类型不匹配”错误。
  • 再次不确定 :-) 但我敢打赌 select sum() 返回 long 并且 c:out 以某种方式期待 int... 请尝试 Select (convert(int, sum(Order_Amount))作为s

标签: html database jsp


【解决方案1】:

您必须在请求中为您的列命名。

<sql:query dataSource="${bookdB}" var="result4">
    SELECT SUM(Order_Amount) AS theSum FROM Jobs;
</sql:query>

<c:forEach var="column" items="${result4.rows}">
   <tr style="position:absolute; left:280px; top:277px;">    
    <td>Live Job(s) Value: <c:out value="${column.theSum}"/></td> 
   </tr>
</c:forEach> 

【讨论】:

  • 感谢您的回复。我添加了上面的代码,但是在编译页面时出现错误。 [Microsoft][ODBC Microsoft Access Driver] 标准表达式中的数据类型不匹配。任何想法是什么问题?
  • 当您尝试对文本字段求和时,Access 会显示“条件表达式中的数据类型不匹配”错误消息。确保“Order_Amount”设置为数字或货币数据类型。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多