Форум: "Начинающим";
Текущий архив: 2008.09.21;
Скачать: [xml.tar.bz2];
ВнизUpdate c подзапросом Найти похожие ветки
← →
ChaosAD © (2008-08-11 18:22) [0]Можно ли выполнить обновление таблицы
update table1
set table1.a=table2.a
where table2 in (при равенстве table1.b=table2.b and table1.c=table2.c)
?
← →
ChaosAD © (2008-08-11 18:45) [1]имеется в виду у обоих таблиц есть одинаковые поля (идентичные). обновить третий столбец первой таблицы на основании третьего столбца второй таблицы при равенстве первых двух обеих таблиц.
← →
ChaosAD © (2008-08-11 19:13) [2]
update table1
set field1=table2.field1
where table2.field1 in
(select table2.field1 from table1,table2 where table1.field2=table2.field2 and table1.field3=table2.field3)
где ошибка?
← →
ChaosAD © (2008-08-11 19:24) [3]
> Anatoly Podgoretsky
ваш коментарий?
← →
Правильный$Вася (2008-08-11 19:38) [4]update t1
set t1.f1=(select t2.f1 from t2 where t1.f2=t2.f2)
← →
ChaosAD © (2008-08-11 19:48) [5]подзапрос возращает множественное значение, следовательно не подходит.
Для каждого значения строки свое соответствие.
в where должно учитываться сразу два условия(... and ....)
← →
sniknik © (2008-08-11 20:04) [6]> где ошибка?
в днк.
> ваш коментарий?
обратится к конкретному человек ума хватило (что не по правилам), а привести конкретные условия для которых пишется запрос (что уже в зубах вязнет от повторов) нет?
вот поэтому и .... up.
> подзапрос возращает множественное значение
с чего бы это? я например вполне допускаю, то (т.к. не обговорено другое) что .f2 ключи.
> в where должно учитываться сразу два условия(... and ....)
попытался бы сначала понять, прежде чем условия ставить...
← →
Anatoly Podgoretsky © (2008-08-11 20:11) [7]
> sniknik © (11.08.08 20:04) [6]
> обратится к конкретному человек ума хватило
Чем достиг противоположного результата. Никакого ответа в данной ветке.
← →
ChaosAD © (2008-08-11 20:23) [8]t1 t2
------- -------
|a | = |a |
|b | = |b |
|c | <--|c |
------- -------
ключей нет. нужно проставить значение поля "С" t2 в t1, при равенстве по полям t1.a=t2.a и t1.b=t2.b
← →
ChaosAD © (2008-08-11 20:38) [9]обе таблицы идентичны, нужна сея операция для проведения обновления, при прошествии времени (обновить номера медполисов).
← →
ChaosAD © (2008-08-11 20:46) [10]• «Начинающим» (вспомогательная конференция. если вам трудно понять самим, что вам нужно или есть желание и способности помогать новичкам — вам сюда) ...
← →
Юрий Зотов © (2008-08-11 20:59) [11]> ChaosAD © (11.08.08 20:23) [8]
Вообще-то, после всего тут сказанного могли бы и сами написать. Я в SQL практически дуб, но вот первое:
update t1
set t1.c = (select t2.c from t2 where t1.a=t2.a and t1.b=t2.b)
А вот второе - если этот select возвращает множественное значение, то либо Вы привели не все поля таблиц, либо таблицы эти были спроектированы еще большим дубом, чем даже я.
← →
ChaosAD © (2008-08-11 21:09) [12]
> Юрий Зотов
не спеши.
при двух одинаковых таблицах!!! одна с неполной инфой другая частично.
вот в неполную по полю "С" нужно проставить значение из полной по полю "С". В таблицах этих также имеются еще поля... из за них и приходится обновлять
← →
sniknik © (2008-08-11 21:24) [13]> одна с неполной инфой другая частично.
открываются все новые и новые горизонты...
обсуждаться же может лиш то, что реально приведено...
← →
Правильный$Вася (2008-08-11 21:26) [14]
> одна с неполной инфой другая частично.
часично и неполно - это не одно и то же?
← →
ChaosAD © (2008-08-11 22:10) [15]из гавна надо собрать полу гавно, неужели не понятно
или все привыкли работать по правилам мистера Кода?
вот так из хаоса приходица собирать по крупицам.
Короче придеца делать через Table.
Пасибо гении за подсказки и за телепатию.
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2008.09.21;
Скачать: [xml.tar.bz2];
Память: 0.48 MB
Время: 0.006 c