0 0

oracle 从一张表中取出最新数据更新到另一张中0

表 table_a

id   name      money

1    zhang

2    li

 

表 table_b

id    nf        money    fid

1    2013     100         1

2    2012     50           1

3    2011     10           1

4    2012   100         2

5    2010    50           2

6    2009     10           2

找出table_b 中最近年份的money 更新到 table_a

 

2013年7月02日 15:56

1个答案 按时间排序 按投票排序

0 0

update table_a
set table_a.money =
   (select  table_b.money
from table_b,
   (select table_b.fid,max(nf) mnf from table_b group by table_b.fid ) b
where table_b.fid =  b.fid
     and table_b.nf = b.mnf
     and table_b.fid =table_a.id )
这个是修改所有,如果你要显示修改的范围可以加where条件.这里认为是一个年份一个人只有一条金额数据,如果是多条那么看自己需要上面逻辑再写了。

2013年7月02日 16:55

相关推荐

    java中读取ORACLE中BLOB字段存储的图片

    例如,在Oracle数据库中创建一张名为`t_wlsgry`的表,并包含一个`BLOB`类型的字段`zp`用于存储图片数据。 3. **图片数据准备**: - 准备一些图片文件,并将其插入到数据库表中。这可以通过SQL语句或者使用Java程序...

    图片BASE64加密保存到数据库Blob类型中(放入数据库,并取出生成图片)

    这通常包括图片读取、BASE64编码、数据库操作以及从数据库取出数据后解码还原图片的步骤。 7. **运行环境**:虽然未明确指出,但执行这个Demo可能需要一个支持JDBC连接的数据库(如MySQL、Oracle等),以及Java开发...

    最全的oracle常用命令大全.txt

    b、将一张表删除语句的格式如下: DORP TABLE 表名; 例:表删除将同时删除表的数据和表的定义 sql>drop table test c、表空间的创建、删除 六、ORACLE逻辑备份的SH文件 完全备份的SH文件:exp_comp.sh rq=` ...

    ORACLE 操作指南

    - **示例**: 从 `Employees` 表拷贝数据到 `Staff` 表: ```sql INSERT INTO Staff (name, age) SELECT name, age FROM Employees; ``` ##### 8、删除表 - **命令格式**: ```sql DROP TABLE table_name; ``` -...

    orcale常用命令

    要想启动或关闭ORACLE系统必须首先切换到ORACLE用户,如下 su - oracle a、启动ORACLE系统 oracle>sqlplus SQL>connect internal SQL>startup SQL>quit b、关闭ORACLE系统 oracle>sqlplus SQL>connect internal ...

    javaweb中常见问题积累

    - 数据应该根据其性质被妥善保存在适当的位置(如Session、Cookie、数据库等),并在需要时从这些位置取出使用。合理的数据存储策略可以提高应用的性能和用户体验。 8. **命名统一规范** - 统一的命名规范不仅有...

    Hibernate主键生成策略.docx

    **描述**:由 Hibernate 负责管理主键生成,它会从数据库中取出当前最大值,每次保存新记录时自动递增 1。这种策略不依赖于底层数据库,因此具有良好的跨数据库兼容性。 **配置示例**: ```xml ``` **特点**...

    数据库操作语句大全(sql)

    因为这样可以避免 top的字段如果是逻辑索引的,查询的结果后实际表中的不一致(逻辑索引中的数据有可能和数据表中的不一致,而查询时如果处在索引则首先查询索引) 14、说明:前10条记录 select top 10 * form ...

    PL/SQL Developer8.04官网程序_keygen_汉化

     问题:假设有一张表t1,有f1和f2两个字段,f1为number类型,f2为varchar2类型,要往t1里写两条记录,内容自定。  Create or replace procedure test_procedure as V_f11 number :=1;  /*声明变量并赋初值*/  V_...

    PLSQLDeveloper下载

    过程:Create or replace procedure procname(参数列表) as PL/SQL语句块 函数:Create or replace function funcname(参数列表) return 返回值 as PL/SQL语句块 为便于理解,举例如下: 问题:假设有一张表t1,有...

    经典SQL语句大全

    因为这样可以避免 top的字段如果是逻辑索引的,查询的结果后实际表中的不一致(逻辑索引中的数据有可能和数据表中的不一致,而查询时如果处在索引则首先查询索引) 14、说明:前10条记录 select top 10 * form table...

    hibernate主键生成策略详解

    **increment** 策略由 Hibernate 从数据库中取出主键的最大值(每个 session 只取一次),并在此基础上每次递增 1 来生成新的主键值。这一策略不依赖于底层数据库的具体实现,因此可以在不同的数据库之间通用。 在...

Global site tag (gtag.js) - Google Analytics