1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/xuthus5-Database-SQL-Actual-Combat

Клонировать/Скачать
44.将id=5以及emp_no=10001的行数据替换成id=5以及emp_no=10005.md 1.7 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
Отправлено 10.03.2025 00:53 c66e7df

Замените данные строки с id=5 и emp_no=10001 на id=5 и emp_no=10005

Описание задачи

Замените данные строки с id=5 и emp_no=10001 на id=5 и emp_no=10005, при этом остальные данные должны оставаться без изменения. Используйте операцию replace.

CREATE TABLE IF NOT EXISTS titles_test (
    id int(11) not null primary key,
    emp_no int(11) NOT NULL,
    title varchar(50) NOT NULL,
    from_date date NOT NULL,
    to_date date DEFAULT NULL
);

INSERT INTO titles_test VALUES ('1', '10001', 'Senior Engineer', '1986-06-26', '9999-01-01'),
                                ('2', '10002', 'Staff', '1996-08-03', '9999-01-01'),
                                ('3', '10003', 'Senior Engineer', '1995-12-03', '9999-01-01'),
                                ('4', '10004', 'Senior Engineer', '1995-12-03', '9999-01-01'),
                                ('5', '10001', 'Senior Engineer', '1986-06-26', '9999-01-01'),
                                ('6', '10002', 'Staff', '1996-08-03', '9999-01-01'),
                                ('7', '10003', 'Senior Engineer', '1995-12-03', '9999-01-01');

Ответ

REPLACE INTO titles_test VALUES ('5', '10005', 'Senior Engineer', '1986-06-26', '9999-01-01')

Объяснение решения

Операция REPLACE INTO проверяет конфликт между первичным ключом или уникальным индексом. В случае конфликта данные будут заменены, в противном случае будет выполнена операция INSERT INTO.

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/xuthus5-Database-SQL-Actual-Combat.git
git@api.gitlife.ru:oschina-mirror/xuthus5-Database-SQL-Actual-Combat.git
oschina-mirror
xuthus5-Database-SQL-Actual-Combat
xuthus5-Database-SQL-Actual-Combat
master