小编Dat*_*Rid的帖子

Oracle:通过添加现有值来更新数据行

我的数据库(Oracle 11g)中有一个大表,我想更新表中的列,其中包含特定的数字.我想通过设置prefix此列的每个值的前面来更新它.

示例(SpecificNumber是int和PK,Value1是Varchar2,因此是最后一列):

实际数据:

    [SpecificNumber] [Value1] [column2gettingupdated]
[1]  123456789        Test     text    
[2]  123456789102     sth      text2    
[3]  12233            text     test3
Run Code Online (Sandbox Code Playgroud)

未来数据(在我的sql之后):

    [SpecificNumber] [Value1] [column2gettingupdated]
[1]  123456789        Test     PREFIX-text    
[2]  123456789102     sth      PREFIX-text2    
[3]  12233            text     PREFIX-test3
Run Code Online (Sandbox Code Playgroud)

所以我想的是:

Update table
set column2gettingupdated=("prefix"+
    (select column2gettingupdated from table where SpecificNumber = '12233')
)
where SpecificNumber = '12233';
Run Code Online (Sandbox Code Playgroud)

但这给了我一个ORA-00904: "p": invalid identifier错误.

如果我试试这个:

Update table
set column2gettingupdated=("prefix"+
    (select column2gettingupdated from table where SpecificNumber = '12233')
) …
Run Code Online (Sandbox Code Playgroud)

sql oracle sql-update

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

将行(如果尚不存在)插入到已存在的表(在 MS-SQL / T-Sql 中)

我们在 db 中已经有这个表 ( IPConfig)。(SQL Server 2k8)

IP         |   Member
-----------------------
10.1.2.100 | Joe
10.2.2.200 | Maley
Run Code Online (Sandbox Code Playgroud)

现在,我应该有一个查询应该执行以下操作:

  1. 保持当前表不变。如果表不存在,请创建一个。
  2. 插入新记录(在下一版本部署中定义)

我从这个开始但无法继续。

    IF (NOT EXISTS (SELECT * 
                     FROM INFORMATION_SCHEMA.TABLES 
                     WHERE TABLE_SCHEMA = 'dbo' 
                     AND  TABLE_NAME = 'IPConfig'))
    BEGIN
      CREATE TABLE dbo.IPConfig (
        IP CHAR(10) PRIMARY KEY NOT NULL,
        Member VARCHAR(32) NOT NULL)
    END

    DECLARE @TempTable Table(               -- Create a temp table.
     IP CHAR(10) PRIMARY KEY NOT NULL,
     Member VARCHAR(32) NOT NULL)

   INSERT INTO @TempTable( 
    IP,
    Member)
    SELECT
      '10.1.2.100',   --Already existing …
Run Code Online (Sandbox Code Playgroud)

sql t-sql sql-server triggers

1
推荐指数
1
解决办法
1万
查看次数

标签 统计

sql ×2

oracle ×1

sql-server ×1

sql-update ×1

t-sql ×1

triggers ×1