oracle update 多表关联如何替换数据

oracle update 多表关联如何替换数据,第1张

哈哈,你犯了逻辑错误,UPDATE table1 a set card_no=8888 WHERE exists (),()中是个Boolean表达式,而不是你先更要条件,就像你写的那么多条件可以用一个表达式来替换那就是(1=1),我说的够明白么,就是说UPDATE table1 a set card_no=8888 WHERE exists (select acard_no

from tabel1 a,table2 b,table3 c

where btran_code=123 and aperson_no=cperson_no and btran_code=ctran_code) 相当于UPDATE table1 a set card_no=8888 WHERE exists (1=1) 你说呢,update table1 set card_no=8888

where card_no in (select acard_no

from tabel1 a,table2 b,table3 c

where btran_code=123 and aperson_no=cperson_no and btran_code=ctran_code) 才是正解

数据库多表关联,一般采用外键比较方便,也可以额外建一个连接表做多表关联的连接,但这样稍微有点儿复杂,这些是建表方面的关联。查询关联,可以采用多表查询的方式关联查询,这点要求稍高点儿,但关联后再 *** 作单表时,别的表不用受太大的影响,这点特好。

UPDATE多表更新(转)(2008-05-12 15:29:04)

转载标签:update多表更新sql 分类:php网络编程

在开发中,数据库来回换,而有些关键性的语法又各不相同,这是一件让开发人员很头痛的事情本文总结了Update语句更新多表时在SQL Server,Oracle,MySQL三种数据库中的用法我也试了SQLite数据库,都没成功,不知是不支持多表更新还是咋的

在本例中: 我们要用表gdqlpj中的gqdltks,bztks字段数据去更新landleveldata中的同字段名的数据,条件是当 landleveldata 中的GEO_Code字段值与gdqlpj中的lxqdm字段值相等时进行更新

SQL Server语法:UPDATE { table_name WITH ( < table_hint_limited > [ n ] ) | view_name | rowset_function_limited } SET { column_name = { expression | DEFAULT | NULL } | @variable = expression | @variable = column = expression } [ ,n ] { { [ FROM { < table_source > } [ ,n ] ] [ WHERE < search_condition > ] } | [ WHERE CURRENT OF { { [ GLOBAL ] cursor_name } | cursor_variable_name } ] } [ OPTION ( < query_hint > [ ,n ] ) ]

SQL Server示例: update a set agqdltks=bgqdltks,abztks=bbztks from landleveldata a,gdqlpj b where aGEO_Code=blxqdm

Oracle语法: UPDATE updatedtable SET (col_name1[,col_name2])= (SELECT col_name1,[,col_name2] FROM srctable [WHERE where_definition])

Oracel 示例: update landleveldata a set (agqdltks, abztks)= (select bgqdltks, bbztks from gdqlpj b where aGEO_Code=blxqdm)

MySQL语法: UPDATE table_references SET col_name1=expr1 [, col_name2=expr2 ] [WHERE where_definition]

MySQL 示例: update landleveldata a, gdqlpj b set agqdltks= bgqdltks, abztks= bbztks where aGEO_Code=blxqdm

设公式啊,把一个数据表作为原始数据

其他的全设为基于这个表数据的公式。

最好都放在一个工作薄里面,如果不在一个工作薄里面,其他的表就要做链接,点击更新链接,并且所有关联表必须打开。

关于“+5”的格式显示

设置单元格式-自定义

+000_ ;[红色]-000

这个意思分别是

正数时前面显示正号“+”,保留两位小数

负数时前面显示“-”,保留两位小数,

你可以先设置为你喜欢的格式,比如“数值”

然后再转到自定义,在最前面加一个“+”号就可以了

这样就不必研究自定义的写法

不知道你为什么需要那么多表,

如果其中的关系很复杂,这涉及到数据库的管理了,

用excel管理不太方便,你可以使用access或更高级的数据库。

如果不是很复杂你可以尽量放在一个工作薄或几个工作薄内,

表格精简,可表达一个连续时间段的内容。

数据管理和数据显示打印可分步完成,

想一步到位,往往需要很多表格。

只要表格设计合适,我想应该不会需要那么多表。

我是做财务的,没有财务软件,

所有的报表用excel自动生成,包括子表,只需要一个工作薄就够了。

以上就是关于oracle update 多表关联如何替换数据全部的内容,包括:oracle update 多表关联如何替换数据、MYSQL数据库中三个数据表如何实现关联、请教sql语句 如何实现关联表字段更新等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/10175683.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-06
下一篇 2023-05-06

发表评论

登录后才能评论

评论列表(0条)

保存