where move 子句可用于重新定位一个或多个文件

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了where move 子句可用于重新定位一个或多个文件相关的知识,希望对你有一定的参考价值。

我刚刚找到答案了,就是如图:

还原为的路径要修改一下,因为它默认的路径是“....SQL实例集..”,以前应该引用过该路径了,如果再用就会冲突了。所以路径要自己写一个想我框里那样写!我改完后还原成功了

参考技术A 你这个应该是对数据库进行还原的操作 提示的错误吧
这种情况原因1、文件的物理路径有错误 重新检查路径或者是更换路径
2、还原的数据库文件缺失 我看上面的提示只有.mdf 应该还有一个.ldf文件 检查下
参考技术B 进贤快递员多少钱一个月;在中小城市好点的快递单位 快递员年平均每个月工资大概 4000-5000钱 。。。 因为快递员送快递工资是属计件制,送多多得送少少得的原则,每月工资是有所不同的。 在中小城市顺丰快递员普通月派送工资每月,大约有3800-4800千元左右,如果是旺季每月有5000元-6000元左右全年平均收入在4000-5000元左右吧。 如果是在大城市快递员工资相联对平均工资要多800-1000元左右。 因为大城市快递送件相对比其它城市多一点的,因为大城市的人口密集,经济收入好,消费能力强,快递多。追答

放松一下,什麽都有 YHS WosTv/www.cvxhr.com?JxbKf

使用 where exists 子句更新多个值

【中文标题】使用 where exists 子句更新多个值【英文标题】:Update multiple values with where exists clause 【发布时间】:2016-06-30 14:09:31 【问题描述】:

我有这个关于 PL/SQL 的问题。 我有 2 个具有相同列的表。 一个用于当前运行,另一个用于历史记录。

每次运行时,我都需要仅使用在当前运行中找到的值来更新历史记录。

当前表

|   ID  |__NAME__|__SURNAME__|__CITY__|
| 10000 |  ABC   |   CDE     |   IT   |
| 10001 |  EFG   |   ASD     |   EN   |
| 10005 |        |           |        |

历史表

|   ID  |__NAME__|__SURNAME__|__CITY__|
| 10000 |  FFF   |    AAA    |   EN   |
| 10001 |  DDD   |    BBB    |   GR   |
| 10005 |  JKO   |    POI    |   GR   |
| 10006 |  DLK   |    MIN    |   IT   |

如您所见,Current Table 有一条记录,其中除了 ID=10005 之外的所有值都是空的。 所以,我需要从当前表中更新历史记录(名字、姓氏、城市),其中 id 存在于当前表中,并且名字、姓氏和城市不为空。

我试过了

UPDATE HISTORY
    SET (NAME, SURNAME, CITY) = (
        SELECT NAME, SURNAME, CITY
        FROM CURRENT temp
        WHERE temp.name is not null and temp.id = history.id
        )
    WHERE exists (
        SELECT NAME, SURNAME, CITY
        FROM CURRENT temp
        WHERE temp.name is not null and temp.id = history.id
    );

但它不起作用。 需要强调的是,当当前表中name为null时,surname和city也为null。

【问题讨论】:

你使用的是 MySQL 还是 Postgres? PLSQL- 我要编辑我的问题 你的意思是Oracle SQL吗? 【参考方案1】:

实际上,您的查询中唯一错误的是表 CURRENT 的名称。它是oracle 中的保留字,不建议将其用作表名。你必须使用“”这个才能工作。这里:

UPDATE HISTORY
    SET (NAME, SURNAME, CITY) = (
        SELECT NAME, SURNAME, CITY
        FROM "CURRENT" temp
        WHERE temp.name is not null and temp.id = history.id
        )
    WHERE exists (
        SELECT NAME, SURNAME, CITY
        FROM "CURRENT" temp
        WHERE temp.name is not null and temp.id = history.id
    );

您也可以使用MERGE(请参阅两者的解释计划):

MERGE INTO HISTORY_TABLE a
     USING (SELECT ID, NAME, SURNAME, CITY
              FROM CURRENT_TABLE
             WHERE NAME IS NOT NULL) b
        ON (a.id = b.id)
WHEN MATCHED THEN
   UPDATE SET a.NAME = b.NAME, a.SURNAME = b.SURNAME, a.CITY = b.CITY

【讨论】:

以上是关于where move 子句可用于重新定位一个或多个文件的主要内容,如果未能解决你的问题,请参考以下文章

带有WHERE子句逻辑的SQL Server存储过程

Oracle的where子句

“.MoveSize”或“.Move”用于弹出表单定位

《SQLite3 — 子句》

我可以将报告参数用作 WHERE 子句的一部分吗

使用 where exists 子句更新多个值