标签: sql-update

如何在SQL中使用JOIN执行UPDATE语句?

我需要使用其"父"表中的数据更新SQL Server 2005中的此表,如下所示:

拍卖

id (int)
udid (int)
assid (int)
Run Code Online (Sandbox Code Playgroud)

UD

id  (int)
assid  (int)
Run Code Online (Sandbox Code Playgroud)

sale.assid包含要更新的正确值ud.assid.

什么查询会这样做?我在考虑,join但我不确定是否可能.

sql t-sql sql-server sql-server-2005 sql-update

1262
推荐指数
14
解决办法
152万
查看次数

基于ID匹配从一个表到另一个表的SQL更新

我有一个带account numbers和的数据库card numbers.我将这些文件与update任何卡号匹配到帐号,以便我只使用帐号.

我创建了一个视图链接表和帐户/卡数据库以返回Table ID相关的帐号,现在我需要更新ID与帐号匹配的记录.

这是Sales_Import表,account number需要更新字段:

LeadID  AccountNumber
147         5807811235
150         5807811326
185         7006100100007267039
Run Code Online (Sandbox Code Playgroud)

这是RetrieveAccountNumber表,我需要更新:

LeadID  AccountNumber
147         7006100100007266957
150         7006100100007267039
Run Code Online (Sandbox Code Playgroud)

我试过以下,但到目前为止没有运气:

UPDATE [Sales_Lead].[dbo].[Sales_Import] 
SET    [AccountNumber] = (SELECT RetrieveAccountNumber.AccountNumber 
                          FROM   RetrieveAccountNumber 
                          WHERE  [Sales_Lead].[dbo].[Sales_Import]. LeadID = 
                                                RetrieveAccountNumber.LeadID) 
Run Code Online (Sandbox Code Playgroud)

它将卡号更新为帐号,但帐号被替换为 NULL

sql sql-server select join sql-update

885
推荐指数
18
解决办法
167万
查看次数

在SQL Server中使用JOIN更新表?

我想更新表中的列,在其他表上进行连接,例如:

UPDATE table1 a 
INNER JOIN table2 b ON a.commonfield = b.[common field] 
SET a.CalculatedColumn= b.[Calculated Column]
WHERE 
    b.[common field]= a.commonfield
AND a.BatchNO = '110'
Run Code Online (Sandbox Code Playgroud)

但它抱怨:

消息170,级别15,状态1,行2
第2行:'a'附近的语法不正确.

这有什么不对?

t-sql sql-server join sql-update

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

MySQL错误代码:MySQL Workbench中UPDATE期间的1175错误代码

我正在尝试更新列visited以赋予它值1.我使用MySQL工作台,并且我在工作台内部在SQL编辑器中编写语句.我正在编写以下命令:

UPDATE tablename SET columnname=1;
Run Code Online (Sandbox Code Playgroud)

它给了我以下错误:

您正在使用安全更新模式,并且您尝试更新没有使用KEY列的WHERE的表要禁用安全模式,请切换选项....

我跟着指示,我不加以制止,safe update从选项Edit菜单,然后PreferencesSQL Editor.仍然出现相同的错误,我无法更新此值.拜托,告诉我有什么问题?

mysql mysql-workbench sql-update

739
推荐指数
18
解决办法
141万
查看次数

使用连接的SQL更新查询

我必须更新一个字段,其值由3个表的连接返回.

例:

select
    im.itemid
    ,im.sku as iSku
    ,gm.SKU as GSKU
    ,mm.ManufacturerId as ManuId
    ,mm.ManufacturerName
    ,im.mf_item_number
    ,mm.ManufacturerID
from 
    item_master im, group_master gm, Manufacturer_Master mm 
where
    im.mf_item_number like 'STA%'
    and im.sku=gm.sku
    and gm.ManufacturerID = mm.ManufacturerID
    and gm.manufacturerID=34
Run Code Online (Sandbox Code Playgroud)

我想更新mf_item_number表的字段值item_master与在上述条件中连接的其他值.

我怎样才能在MS SQL Server中执行此操作?

sql t-sql sql-server sql-server-2005 sql-update

630
推荐指数
7
解决办法
86万
查看次数

MySQL - 基于SELECT Query的UPDATE查询

我需要检查(从同一个表)基于日期时间的两个事件之间是否存在关联.

一组数据将包含某些事件的结束日期时间,另一组数据将包含其他事件的开始日期时间.

如果第一个事件在第二个事件之前完成,那么我想将它们链接起来.

到目前为止我所拥有的是:

SELECT name as name_A, date-time as end_DTS, id as id_A 
FROM tableA WHERE criteria = 1


SELECT name as name_B, date-time as start_DTS, id as id_B 
FROM tableA WHERE criteria = 2
Run Code Online (Sandbox Code Playgroud)

然后我加入他们:

SELECT name_A, name_B, id_A, id_B, 
if(start_DTS > end_DTS,'VALID','') as validation_check
FROM tableA
LEFT JOIN tableB ON name_A = name_B
Run Code Online (Sandbox Code Playgroud)

那么,基于我的validation_check字段,我可以使用SELECT嵌套运行UPDATE查询吗?

mysql select sql-update

465
推荐指数
9
解决办法
95万
查看次数

我如何(或可以)在多列上选择DISTINCT?

我需要检索表中的所有行,其中2列组合都是不同的.因此,我希望所有在同一天没有任何其他销售的销售以相同的价格出售.基于日期和价格的唯一销售将更新为活动状态.

所以我在想:

UPDATE sales
SET status = 'ACTIVE'
WHERE id IN (SELECT DISTINCT (saleprice, saledate), id, count(id)
             FROM sales
             HAVING count = 1)
Run Code Online (Sandbox Code Playgroud)

但是我的大脑比那更远了.

sql postgresql distinct duplicates sql-update

382
推荐指数
4
解决办法
86万
查看次数

如何更新sql server中的前100条记录

我想更新SQL Server中的前100条记录.我有一个表T1包含字段F1F2.T1有200条记录.我想更新F1前100条记录中的字段.如何TOP 100在SQL Server中进行更新?

sql t-sql sql-server sql-update

376
推荐指数
4
解决办法
38万
查看次数

MySQL中的多个更新

我知道你可以一次插入多行,有没有办法在MySQL中一次更新多行(如在一个查询中)?

编辑:例如我有以下内容

Name   id  Col1  Col2
Row1   1    6     1
Row2   2    2     3
Row3   3    9     5
Row4   4    16    8
Run Code Online (Sandbox Code Playgroud)

我想将以下所有更新组合到一个查询中

UPDATE table SET Col1 = 1 WHERE id = 1;
UPDATE table SET Col1 = 2 WHERE id = 2;
UPDATE table SET Col2 = 3 WHERE id = 3;
UPDATE table SET Col1 = 10 WHERE id = 4;
UPDATE table SET Col2 = 12 WHERE id = 4;
Run Code Online (Sandbox Code Playgroud)

mysql sql sql-update

363
推荐指数
8
解决办法
36万
查看次数

如何插入包含撇号(单引号)的值?

在其中插入带撇号的值的正确SQL语法是什么?

Insert into Person
  (First, Last)
Values
  'Joe',
  'O'Brien'
Run Code Online (Sandbox Code Playgroud)

我一直收到错误,因为我认为O之后的撇号是值的结束标记.

sql sql-update sql-insert

293
推荐指数
7
解决办法
64万
查看次数