zoukankan      html  css  js  c++  java
  • SQL Server 多表Update 及其排序

    1.工作中需要excel 导入到数据库,并修改相关表 导入就不提了.[商品修改价格] 导入的execl 表 SaleShopPrice 商品价格表

    UPDATE SaleShopPrice
    SET SaleShopPrice.SalePrice=商品修改价格.新销价
    ,SaleShopPrice.CostPrice=商品修改价格.新成本价
    FROM SaleShopPrice,商品修改价格
    WHERE  CAST(SaleShopPrice.SID AS VARCHAR(20))=CAST(商品修改价格.编号 as varchar(20))

    这样就完成了一个表以另外一个表的条件和值进行修改.

    2.临时表插入数据的两种方法

    (1) select .... into  #o from table         插入数据到临时表

    (2) insert into #o select ... from table  插入数据到临时表

    两种区别在于 (1) 不需要先创建表结构,临时表会根据 select 的字段及其类型自动创建此类型的临时表,而(2)需要先创建表结构,然后才能插入数据到临时表

    3.SQL 分组的注意事项

    (1) select top 1 * from table order by t1 desc,t2 desc

    (2) select top 1 * from table order by t1,t2 desc

    这两种order by (2)用过很多,以前以为是根据t1,t2字段进行从大到小的排序.工作时需要取一条,根据2个字段进行排序,t1相等时根据t2取top1.使用(2)却发现怎么也不对.后来群里问,给了(1) 问了为啥才知道期间细节.原来 order by 默认是asc 进行排序.使用t1,t2 desc 时,实际上是t1 asc,t2 desc而 t1 desc,t2 desc才是我需要的.以前从没注意的问题.

  • 相关阅读:
    Linux新手入门:通过chmod改变文件权限
    Android Activity 以及 Application 生命周期
    java 并发库之 Executors
    java Netty tcp通讯
    Android App 切换语言
    java svg转png
    高效的数独算法-位运算
    Android 高效的`InjectView – ButterKnife`
    Android 监听文件夹
    Android 更新UI
  • 原文地址:https://www.cnblogs.com/wjbobo/p/2624051.html
Copyright © 2011-2022 走看看