powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / MySQL [игнор отключен] [закрыт для гостей] / UPDATE поля с названием из другого поля
12 сообщений из 12, страница 1 из 1
UPDATE поля с названием из другого поля
    #38706705
VarrkaN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем доброго времени суток. Сразу скажу - неуверен, что это возможно, поэтому решил посоветоваться. Ситуация такая:

Есть таблица table, в ней есть поля field1, field2, field3 и field4. Первые три поля типа INT, field4 типа VARCHAR и принимает значения field1 - field3. Возможно ли вообще реализовать запрос типа:

UPDATE `table` SET `тут_значение_поля_field4`=...

И если возможно - то каким образом?

Заранее благодарен за любой ответ
...
Рейтинг: 0 / 0
UPDATE поля с названием из другого поля
    #38706709
Фотография javajdbc
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VarrkaN,

1. если это задача для одной записи, то

update table1 set
field1 = if(field4='field1', $NEW_VALUE, field1),
field2 = if(field4='field2', $NEW_VALUE, field2),
field3 = if(field4='field3', $NEW_VALUE, field3)

2. если задача для множества записей, то 3 разный апдейта

update table1
set field1 = $NEW_VALUE
where field4='field1'

update table1
set field2 = $NEW_VALUE
where field4='field2'

update table1
set field3 = $NEW_VALUE
where field4='field3'
...
Рейтинг: 0 / 0
UPDATE поля с названием из другого поля
    #38706710
VarrkaN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
javajdbc,

Благодарю, задача для множества значений, и сам реализовал по 2-му алгоритму, просто в оригинале полей 10, а это 10 запросов к БД каждые 5 минут... Вот и думал - есть ли вариант оптимизировать...
...
Рейтинг: 0 / 0
UPDATE поля с названием из другого поля
    #38706727
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VarrkaN,
используй хранимые процедуры будет один запрос
...
Рейтинг: 0 / 0
UPDATE поля с названием из другого поля
    #38706776
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VarrkaNВсем доброго времени суток. Сразу скажу - неуверен, что это возможно, поэтому решил посоветоваться. Ситуация такая:

Есть таблица table, в ней есть поля field1, field2, field3 и field4. Первые три поля типа INT, field4 типа VARCHAR и принимает значения field1 - field3. Возможно ли вообще реализовать запрос типа:

UPDATE `table` SET `тут_значение_поля_field4`=...

И если возможно - то каким образом?

Заранее благодарен за любой ответ
дело даже не в том, возможно это или нет, а в том что такого в принципе не должно быть нужно в реляционной СУБД .
...
Рейтинг: 0 / 0
UPDATE поля с названием из другого поля
    #38706933
alex564657498765453
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MasterZivVarrkaNВсем доброго времени суток. Сразу скажу - неуверен, что это возможно, поэтому решил посоветоваться. Ситуация такая:

Есть таблица table, в ней есть поля field1, field2, field3 и field4. Первые три поля типа INT, field4 типа VARCHAR и принимает значения field1 - field3. Возможно ли вообще реализовать запрос типа:

UPDATE `table` SET `тут_значение_поля_field4`=...

И если возможно - то каким образом?

Заранее благодарен за любой ответ
дело даже не в том, возможно это или нет, а в том что такого в принципе не должно быть нужно в реляционной СУБД .

ну зачем же так категорично!!!
есть понятие целосности данных, есть понятие оптимизации данных, если это всё вплане изменений - то выливаеться в нормализацию данных, если оптимизировать вплане селекта, порой выгодно денормализировать.

в даном случае денормализация - полный треш. даная база даже не имеет первой нормальной формы.
...
Рейтинг: 0 / 0
UPDATE поля с названием из другого поля
    #38707078
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: sql
1.
2.
3.
4.
5.
6.
UPDATE table
SET field4 = CASE
                 WHEN field4='field1' THEN value1
                 WHEN field4='field2' THEN value2
                 WHEN field4='field3' THEN value3
             END
...
Рейтинг: 0 / 0
UPDATE поля с названием из другого поля
    #38707096
alex564657498765453
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Akina
Код: sql
1.
2.
3.
4.
5.
6.
UPDATE table
SET field4 = CASE
                 WHEN field4='field1' THEN value1
                 WHEN field4='field2' THEN value2
                 WHEN field4='field3' THEN value3
             END



и да +

как было подмечено выше, чем ниже нормализация, тем сложнее изменение данных.
сложные извраты даже на обновление одной строки - это следствие отсутсвия даже первой нармальной формы...

автор, тебе бы обратить внимание.

это значит(отсутсвие 1нф) - что структура даже не реляционная. язык SQL разработан вообщемто для реляционной структуры.

так что перспективы свои можешь оценить - ты постоянно будешь мучаться с такой базой
...
Рейтинг: 0 / 0
UPDATE поля с названием из другого поля
    #38707119
tanglir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
alex564657498765453так что перспективы свои можешь оценить - ты постоянно будешь мучаться с такой базой+1
Если проводить аналогии с известным анекдотом о фее и солдатах, то ТС только начинает смотреть на гусеницу :)
...
Рейтинг: 0 / 0
UPDATE поля с названием из другого поля
    #38707138
alex564657498765453
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tangliralex564657498765453так что перспективы свои можешь оценить - ты постоянно будешь мучаться с такой базой+1
Если проводить аналогии с известным анекдотом о фее и солдатах, то ТС только начинает смотреть на гусеницу :)

ну раз начал, давай анекдот, ибо заинтриговал...я его точно не слышал
...
Рейтинг: 0 / 0
UPDATE поля с названием из другого поля
    #38707140
tanglir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
alex564657498765453, постить здесь не могу, т.к. нарушу правила, поэтому вот ссылка
...
Рейтинг: 0 / 0
UPDATE поля с названием из другого поля
    #38707144
alex564657498765453
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
нашол... если не тот, запость свой

У танка отвалилась гусеница. Солдаты хором дружно чинять её. Тут появляеться фея, и
говорит.
-А что вы делаете, содатики?
-Да вот с траком(гусеницей) тра%%емся
-А хотите по настоящему потра%%тся.
-Конечно хотим.
Тут фея взмахнула палочкой и у танка башня отвалилась.

===
если про этот анекдот, то да - ТС только посмотрел на гусеницу. Так что уважаемы читатели
данного форума. Скоро нас ожидает куча интересных вопросов на тему - используя нанотехнологии из бревна получить новый микропроцессор.
...
Рейтинг: 0 / 0
12 сообщений из 12, страница 1 из 1
Форумы / MySQL [игнор отключен] [закрыт для гостей] / UPDATE поля с названием из другого поля
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]