У меня есть две таблицы A и
update A set (*) = (select * from B where id = 1) where session_id ='123';
Обе таблицы сохраняют столбец EXCEPT для session_id в таблице A. Любая идея о том, как я могу обновить запись без объявления всех столбцов?
Результат должен выглядеть как результат следующего запроса, но я должен использовать это:
insert into A select * from B;
update A set session_id ='a';
Я хочу знать, как вставить session_id FIRST, а затем ВСЕ записи.
Я не знаком с спецификациями codeigniter, но если все столбцы в таблице B объявлены в том же порядке в таблице A, а затем за ними следует session_id
, вы можете сделать следующее:
INSERT INTO "A"
SELECT *, '123'
FROM "B"
WHERE id = 1;
Если session_id
сначала встречается в таблице A, за которой следуют все столбцы таблицы B в объявленном порядке, тогда вы просто меняете порядок столбцов в SELECT
. Если заказ не идентичен (кроме session_id
), вам не повезло.