Имеется Таблица My_TABLE, поля street(LONGTEXT),house(LONGTEXT), пытаюсь в этой ж таблице создать столбец address на основе 2х вышеперечисленных. Но не выходит . Запрос такой,
INSERT INTO MY_TABLE (address)
SELECT CONCAT(street, ' ', house) FROM MY_TABLE;
Подскажите пожалуйста что не так
Ошибка в том, что Вы ВСТАВЛЯЕТЕ данные. Т.е. в дополнение к существующей записи с имеющимися street и house и пустым address хотите вставить новую запись с пустыми street и house и заполненным address.
Вам же нужно в существующей записи изменить пустое address на созданное из имеющихся street и house. Вставка нового значения в одно из полей существующей записи - это обновление записи, а не вставка. И запрос будет
UPDATE MY_TABLE
SET address = CONCAT(street, ' ', house);
Однако этот подход по сути своей ошибочен (за исключением случая, когда впоследствии поле address может подвергнуться корректировке без изменения street/house или наоборот). Если address ВСЕГДА будет соответствовать street/house - надо вообще исключить поле address из структуры таблицы, и получать его значение непосредственно в запросе, в котором оно понадобилось.
PS. Если же поле address должно появиться в таблице, а сейчас его там нет, то его сначала надо создать. Запросом
ALTER TABLE my_table
ADD COLUMN address LONGTEXT;
и только потом обновлять его значение показанным выше запросом.
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости