Задать вопрос
@iRumba

Как обновить все поля профиля одним запросом, если эти поля являются строками, а не столбцами?

Есть таблицы:
users
[UserId][UserName]

userprofiles
[UserId][Field][Value]
То есть поля в этой

MySQL позволяет выполнить запрос
  • Вопрос задан
  • 142 просмотра
Подписаться 1 Оценить Комментировать
Помогут разобраться в теме Все курсы
  • Skillbox
    Java-разработчик
    8 месяцев
    Далее
  • Shultais Education
    Основы SQL
    3 месяца
    Далее
  • OTUS
    PHP Developer. Professional
    5 месяцев
    Далее
Пригласить эксперта
Ответы на вопрос 2
В цикле переберите все строки и обновите каждую
Ответ написан
Комментировать
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
Если (`UserId`, `Field`) - уникальный ключ, то
INSERT INTO `userprofiles` (`Field`, `Value`) 
    VALUES ('fld1', 'val1'), ('fld2', 'val2'), ... ('fldN', 'valN')
    ON DUPLICATE KEY UPDATE `Value` = VALUES(`Value`)
    WHERE `UserId` = 'uid'
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы