标签: sql-update

使用子查询更新postgres中的表行

使用postgres 8.4,我的目标是更新现有表:

CREATE TABLE public.dummy
(
  address_id SERIAL,
  addr1 character(40),
  addr2 character(40),
  city character(25),
  state character(2),
  zip character(5),
  customer boolean,
  supplier boolean,
  partner boolean

)
WITH (
  OIDS=FALSE
);
Run Code Online (Sandbox Code Playgroud)

最初我使用insert语句测试了我的查询:

insert into address customer,supplier,partner
SELECT  
    case when cust.addr1 is not null then TRUE else FALSE end customer, 
    case when suppl.addr1 is not null then TRUE else FALSE end supplier,
    case when partn.addr1 is not null then TRUE else FALSE end partner
from (
    SELECT *
        from address) pa
    left outer …
Run Code Online (Sandbox Code Playgroud)

sql postgresql subquery sql-update

268
推荐指数
5
解决办法
28万
查看次数

Oracle SQL:使用另一个表中的数据更新表

表格1:

id    name    desc
-----------------------
1     a       abc
2     b       def
3     c       adf
Run Code Online (Sandbox Code Playgroud)

表2:

id    name    desc
-----------------------
1     x       123
2     y       345
Run Code Online (Sandbox Code Playgroud)

在oracle SQL中,如何运行可以使用表2更新表1 并使用相同的sql更新查询?所以我得到的最终结果是namedescid

表格1:

id    name    desc
-----------------------
1     x       123
2     y       345
3     c       adf
Run Code Online (Sandbox Code Playgroud)

问题来自更新一个表与来自另一个表的数据,但专门针对oracle SQL.

sql oracle sql-update

234
推荐指数
5
解决办法
90万
查看次数

mysql更新列,其中包含来自另一个表的值

我有两张桌子,看起来都像

id  name  value
===================
1   Joe     22
2   Derk    30
Run Code Online (Sandbox Code Playgroud)

我需要的值复制valuetableAtableB基于每个表检查名称.

这个UPDATE陈述的任何提示?

mysql sql sql-update

203
推荐指数
4
解决办法
32万
查看次数

如何在SQL Server 2008中使用表别名编写UPDATE SQL?

我有一个非常基本的UPDATE SQL-

UPDATE HOLD_TABLE Q SET Q.TITLE = 'TEST' WHERE Q.ID = 101;
Run Code Online (Sandbox Code Playgroud)

该查询中运行良好Oracle,Derby,MySQL-但它在SQL Server 2008中失败 与以下错误:

"Msg 102,Level 15,State 1,Line 1'Q'附近的语法不正确."

如果我从SQL中删除所有出现的别名"Q",那么它可以正常工作.

但我需要使用别名.

sql sql-server alias sql-server-2008 sql-update

191
推荐指数
2
解决办法
17万
查看次数

使用LEFT JOIN在MySQL中更新多个表

我有两个表,并希望更新LEFT JOIN中所有行的T1字段.

举一个简单的例子,更新以下结果集的所有行:

SELECT T1.* FROM T1 LEFT JOIN T2 ON T1.id = T2.id WHERE T2.id IS NULL  
Run Code Online (Sandbox Code Playgroud)

MySQL手册指出:

多表UPDATE语句可以使用SELECT语句中允许的任何类型的连接,例如LEFT JOIN.

但是我在文档化的多表UPDATE中找不到正确的语法.

什么是正确的语法?

mysql sql-update

160
推荐指数
3
解决办法
24万
查看次数

我想使用CASE语句更新sql server 2005中的一些记录

UPDATE dbo.TestStudents  
SET LASTNAME = 
( CASE  
WHEN (LASTNAME = 'AAA') THEN 'BBB' 
WHEN (LASTNAME = 'CCC') THEN 'DDD' 
WHEN (LASTNAME = 'EEE') THEN 'FFF' 
ELSE  (LASTNAME)
END )
Run Code Online (Sandbox Code Playgroud)

该语句适用于此目的,但else条件扫描表中的每条记录.有什么方法可以保留未受影响的行吗?

sql t-sql sql-server sql-update

159
推荐指数
3
解决办法
48万
查看次数

受PL/SQL中UPDATE影响的行数

我有一个PL/SQL函数(在Oracle 10g上运行),我在其中更新了一些行.有没有办法找出UPDATE影响了多少行?当手动执行查询时,它会告诉我有多少行受到影响,我想在PL/SQL中获取该数字.

oracle plsql sql-update

155
推荐指数
3
解决办法
30万
查看次数

在SQL中更新多个列

有没有办法在SQL服务器中更新多个列,就像使用insert语句一样?

就像是:

Update table1 set (a,b,c,d,e,f,g,h,i,j,k)=
(t2.a,t2.b,t2.c,t2.d,t2.e,t2.f,t2.g,t2.h,t2.i,t2.j,t2.k)
from table2 t2
where table1.id=table2.id
Run Code Online (Sandbox Code Playgroud)

或类似的东西,而不是像这样:

update table set a=t2.a,b=t2.b etc 
Run Code Online (Sandbox Code Playgroud)

如果你有100多列,写起来可能很烦人.

sql sql-server sql-update

155
推荐指数
7
解决办法
56万
查看次数

在mysql中更改一个单元格的数据

如何只更改mysql表的一个单元格中的数据.我有UPDATE的问题,因为它使列中的所有参数都发生了变化,但我只想更改一个.怎么样?

mysql sql-update

151
推荐指数
6
解决办法
35万
查看次数

如何使用null值更新列

我使用的是mysql,需要使用null值更新列.我尝试了很多不同的方法,我得到的最好的是一个空字符串.

有没有特殊的语法来做到这一点?

mysql sql-update

137
推荐指数
5
解决办法
37万
查看次数