热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

如何将一张表的查询结果经过计算插入到另一张表里面?

如何将一张表的查询结果经过计算插入到另一张表里面.现在表一有三个字段,price(单价),number(数量),taxrate(税额)。表二有7个字段,price(单价),number(数量),tax
如何将一张表的查询结果经过计算插入到另一张表里面.现在表一有三个字段,price(单价),number(数量),taxrate(税额)。表二有7个字段,price(单价),number(数量),taxrate(税额),cprice(含税单价=单价*(税额+1)%),mny(本币无税金额=单价*数量),summny(本币含税金额=含税单价*数量),taxmny(本币金额=summny-mny)。
我的语句如下:
insert into 表二 (price,number,taxrate,cprice=price*(taxrate*0.01+1),mny=price*number,summny=cprice*number,taxmny=summny-mny) select * from 表一

请问错在哪里?

5 个解决方案

#1


大概是这样:

insert into 表二 (price,number,taxrate,cprice,mny,summny,taxmny) 
select price,number,taxrate,price*(taxrate*0.01+1),price*number,(price*(taxrate*0.01+1))*number,(price*number)-mny 
from 表一


insert 语句里的字段只是一个字段列表,不能进行计算的,只有 select中才能进行计算

#2



insert into 表二
(price,number,taxrate,cprice,mny,summny,taxmny) 
select price,number,taxrate,price*(taxrate*0.01+1),price*number,price*(taxrate*0.01+1)*number,price*(taxrate*0.01+1)*number-price*number
from 表一

#3


用以下方法测测,对应两个表栏位
INSERT  INTO 表二
        ( price ,
          number ,
          taxrate ,
          cprice ,
          mny ,
          summny ,
          taxmny
        )
        SELECT  price ,
                number ,
                taxrate ,
                cprice = price * ( taxrate * 0.01 + 1 ) ,
                mny = price * number ,
                summny = price * ( taxrate * 0.01 + 1 ) * number ,
                taxmny = ( price * ( taxrate * 0.01 + 1 ) - price ) * number
        FROM    表一;

#4


引用 3 楼 roy_88 的回复:
用以下方法测测,对应两个表栏位
INSERT  INTO 表二
        ( price ,
          number ,
          taxrate ,
          cprice ,
          mny ,
          summny ,
          taxmny
        )
        SELECT  price ,
                number ,
                taxrate ,
                cprice = price * ( taxrate * 0.01 + 1 ) ,
                mny = price * number ,
                summny = price * ( taxrate * 0.01 + 1 ) * number ,
                taxmny = ( price * ( taxrate * 0.01 + 1 ) - price ) * number
        FROM    表一;

设置的price价格如何取消四舍五入?

#5


引用 4 楼 wu123432121 的回复:
Quote: 引用 3 楼 roy_88 的回复:

用以下方法测测,对应两个表栏位
INSERT  INTO 表二
        ( price ,
          number ,
          taxrate ,
          cprice ,
          mny ,
          summny ,
          taxmny
        )
        SELECT  price ,
                number ,
                taxrate ,
                cprice = price * ( taxrate * 0.01 + 1 ) ,
                mny = price * number ,
                summny = price * ( taxrate * 0.01 + 1 ) * number ,
                taxmny = ( price * ( taxrate * 0.01 + 1 ) - price ) * number
        FROM    表一;

设置的price价格如何取消四舍五入?


price是什么类型?
比较下几个类型

      
      
        DECLARE  @d DECIMAL(19,12)=1,@f FLOAT=1,@m MOnEY=1,@n NUMERIC(19,12)=1,@r REAL =1
        SELECT @d/3 AS [DECIMAL],@f/3 AS [FLOAT],@m/3 AS [MONEY],@n/3 AS [NUMERIC],@r/3 AS [REAL]

/*
DECIMAL FLOAT MONEY NUMERIC REAL
0.33333333333333 0.333333333333333 0.3333 0.33333333333333 0.3333333
*/

推荐阅读
  • 本文介绍了游标的使用方法,并以一个水果供应商数据库为例进行了说明。首先创建了一个名为fruits的表,包含了水果的id、供应商id、名称和价格等字段。然后使用游标查询了水果的名称和价格,并将结果输出。最后对游标进行了关闭操作。通过本文可以了解到游标在数据库操作中的应用。 ... [详细]
  • 本文介绍了一个在线急等问题解决方法,即如何统计数据库中某个字段下的所有数据,并将结果显示在文本框里。作者提到了自己是一个菜鸟,希望能够得到帮助。作者使用的是ACCESS数据库,并且给出了一个例子,希望得到的结果是560。作者还提到自己已经尝试了使用"select sum(字段2) from 表名"的语句,得到的结果是650,但不知道如何得到560。希望能够得到解决方案。 ... [详细]
  • 本文详细介绍了Spring的JdbcTemplate的使用方法,包括执行存储过程、存储函数的call()方法,执行任何SQL语句的execute()方法,单个更新和批量更新的update()和batchUpdate()方法,以及单查和列表查询的query()和queryForXXX()方法。提供了经过测试的API供使用。 ... [详细]
  • VScode格式化文档换行或不换行的设置方法
    本文介绍了在VScode中设置格式化文档换行或不换行的方法,包括使用插件和修改settings.json文件的内容。详细步骤为:找到settings.json文件,将其中的代码替换为指定的代码。 ... [详细]
  • IB 物理真题解析:比潜热、理想气体的应用
    本文是对2017年IB物理试卷paper 2中一道涉及比潜热、理想气体和功率的大题进行解析。题目涉及液氧蒸发成氧气的过程,讲解了液氧和氧气分子的结构以及蒸发后分子之间的作用力变化。同时,文章也给出了解题技巧,建议根据得分点的数量来合理分配答题时间。最后,文章提供了答案解析,标注了每个得分点的位置。 ... [详细]
  • CSS3选择器的使用方法详解,提高Web开发效率和精准度
    本文详细介绍了CSS3新增的选择器方法,包括属性选择器的使用。通过CSS3选择器,可以提高Web开发的效率和精准度,使得查找元素更加方便和快捷。同时,本文还对属性选择器的各种用法进行了详细解释,并给出了相应的代码示例。通过学习本文,读者可以更好地掌握CSS3选择器的使用方法,提升自己的Web开发能力。 ... [详细]
  • 本文介绍了P1651题目的描述和要求,以及计算能搭建的塔的最大高度的方法。通过动态规划和状压技术,将问题转化为求解差值的问题,并定义了相应的状态。最终得出了计算最大高度的解法。 ... [详细]
  • Java String与StringBuffer的区别及其应用场景
    本文主要介绍了Java中String和StringBuffer的区别,String是不可变的,而StringBuffer是可变的。StringBuffer在进行字符串处理时不生成新的对象,内存使用上要优于String类。因此,在需要频繁对字符串进行修改的情况下,使用StringBuffer更加适合。同时,文章还介绍了String和StringBuffer的应用场景。 ... [详细]
  • Oracle分析函数first_value()和last_value()的用法及原理
    本文介绍了Oracle分析函数first_value()和last_value()的用法和原理,以及在查询销售记录日期和部门中的应用。通过示例和解释,详细说明了first_value()和last_value()的功能和不同之处。同时,对于last_value()的结果出现不一样的情况进行了解释,并提供了理解last_value()默认统计范围的方法。该文对于使用Oracle分析函数的开发人员和数据库管理员具有参考价值。 ... [详细]
  • 本文详细介绍了在ASP.NET中获取插入记录的ID的几种方法,包括使用SCOPE_IDENTITY()和IDENT_CURRENT()函数,以及通过ExecuteReader方法执行SQL语句获取ID的步骤。同时,还提供了使用这些方法的示例代码和注意事项。对于需要获取表中最后一个插入操作所产生的ID或马上使用刚插入的新记录ID的开发者来说,本文提供了一些有用的技巧和建议。 ... [详细]
  • 开发笔记:select from具体执行相关知识介绍及案例分析
    本文由编程笔记小编整理,主要介绍了select from具体执行相关的知识,包括数据插入、查询最小rowID、查询每个重复名字的最小rowID、删除重复数据等操作,并提供了案例分析。希望对读者有一定的参考价值。 ... [详细]
  • 本文详细介绍了Java中vector的使用方法和相关知识,包括vector类的功能、构造方法和使用注意事项。通过使用vector类,可以方便地实现动态数组的功能,并且可以随意插入不同类型的对象,进行查找、插入和删除操作。这篇文章对于需要频繁进行查找、插入和删除操作的情况下,使用vector类是一个很好的选择。 ... [详细]
  • ALTERTABLE通过更改、添加、除去列和约束,或者通过启用或禁用约束和触发器来更改表的定义。语法ALTERTABLEtable{[ALTERCOLUMNcolu ... [详细]
  • 3.223.28周学习总结中的贪心作业收获及困惑
    本文是对3.223.28周学习总结中的贪心作业进行总结,作者在解题过程中参考了他人的代码,但前提是要先理解题目并有解题思路。作者分享了自己在贪心作业中的收获,同时提到了一道让他困惑的题目,即input details部分引发的疑惑。 ... [详细]
  • 本文讨论了Kotlin中扩展函数的一些惯用用法以及其合理性。作者认为在某些情况下,定义扩展函数没有意义,但官方的编码约定支持这种方式。文章还介绍了在类之外定义扩展函数的具体用法,并讨论了避免使用扩展函数的边缘情况。作者提出了对于扩展函数的合理性的质疑,并给出了自己的反驳。最后,文章强调了在编写Kotlin代码时可以自由地使用扩展函数的重要性。 ... [详细]
author-avatar
无敌BUG
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有