C# sql 命令无法搜索总成本
本文关键字:搜索 总成本 sql 命令 | 更新日期: 2023-09-27 18:17:55
我正在设计一个表单来显示列表框上的总成本。我发现尝试运行此命令时
出错我的目的是显示课程ID,学生人数和总成本("运营成本"列和"材料费用"列的总和(
我想在两个值之间搜索总成本。("price1"文本框和"price2"文本框的值(例如,搜索所有总计700到1000之间的成本
但是运行命令后,消息框上显示错误
错误消息是关于 ErrorSystem.Date.OleDB.OleDbExceptionError(0x80040E14( select query Operator总和(运营成本 + 材料费用(>='700' 和 <='1000' 缺少运算符
OleDbCommand cmd = new OleDbCommand("select courseId ,numOfStudent,sum( operatingCost + materialFee) AS Total_Cost from course group by courseId , numOfStudent having sum(operatingCost + materialFee) >= '" + price1.Text + "' and =<'" + price2.Text + "'", connection);
我的问题在哪里?有人可以告诉我吗?
SQL 上存在错误。正确使用方法:
having sum(operatingCost + materialFee) between x and y
或
having sum(operatingCost + materialFee) >= x and sum(operatingCost + materialFee) <= y
来源:
http://www.w3schools.com/sql/sql_and_or.asp
http://www.w3schools.com/sql/sql_where.asp
http://www.w3schools.com/sql/sql_between.asp
"... having sum(operatingCost + materialFee) between " + price1.Text + " and " + price2.Text, connection);
未引用
请记住,对于每个 和条件,这是一个新条件。 因此,您需要使用 Your 条件再次定义该列。
例:从 [产品] 中选择 *,其中价格>='2' 和价格 <='10'
您应该使用 Total_Cost
而不是
总和(运营成本 + 材料费(