| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Составление SQL-запросов > [MySQL]скопировать поля одной записи в другую запись |
| Автор: maxipub 9.8.2011, 16:05 |
| уважаемые, как лучше скопировать содержимое одного рядка в другой? предположим, у нас есть некая таблица, с уникальным id, как содержание рядка с id = 123 сделать таким же, как и у рядка с id = 777 ? и еще такой подвопрос, а можно сделать все то же самое, только с исключением определенного, указанного списка колонок (т.е. их значения не копировать) |
| Автор: CruorVult 9.8.2011, 16:39 | ||
| банально select+insert/update просто копировать
|
| Автор: maxipub 9.8.2011, 16:48 |
| CruorVult, благодарю, но, во-первых, необходимо не вставить новый рядок, а обновить существующий. Во-вторых, id - уникальный. |
| Автор: CruorVult 9.8.2011, 21:06 |
| обычным запросом врятли получится. Нужно вытянуть селектом нужную запись и потом построить нужный апдейт запрос |
| Автор: Akina 10.8.2011, 08:14 |
удалить сущствующий, скопировать нужный с соотв. изменением ID. |
| Автор: LordZeus 23.8.2011, 11:28 | ||||
Извиняюсь, но почему у меня не работает этот код !?
Выдает данную ошибку
|
| Автор: Akina 23.8.2011, 11:36 |
| LordZeus, Если Вы неспособны самостоятельно перевести сообщение - попросите это сделать любой онлайновый переводчик. |
| Автор: LordZeus 23.8.2011, 11:43 |
| Akina, ВО Я ТУПАНУЛ |
| Автор: Akina 23.8.2011, 11:49 | ||
| Не пишите всё в строку, лучше вот так
|
| Автор: rodnover 23.8.2011, 11:58 | ||
| http://dev.mysql.com/doc/refman/5.0/en/replace.html Вот такое? обновляет все существующие id, добавляет отсутствующие.
|
| Автор: Zloxa 23.8.2011, 12:04 |
Запятые, ИМХО лучше в начале строки ставить. Это поначалу кажется не логичным, пока ездиишь в реьсах грамаматики человеческого языка. Но на деле.. Во первых, если строка всегда начинается с лексической конструцкии (не идентификатора), это намного проще парсить глазками. Правда намного лучше это видно при переносе выражений.... Намного легче читать, когда операторы (сложения всякие, конткатенации) находятся в начале строки и ты понимаешь что это не новое выражение а продложение старого. Тоже и с функцией. Когда видишь запятую в начале, сразу понимаешь, что это еще перечисление параметров, а не вызов новой процедуры - и скобки считать не надо. Во вторых на практике куда чаще возникает необходимость элемент дописать в конец списка нежели в его начало. Если запятая ставится в начале строки, то не надо идти на конец предыдущей строки, ставить запятую... много каллорий экомномится В третьих, на практике куда чаще возникает необходимость закоментировать последний элемент списка(или же несколько последних) нежели первый, ставим -- в начале строки и не надо идти на строку в верх, чтобы убрать запятую. А из недостатков - лишь легкий разрыв шаблонов в попервое. |
| Автор: LordZeus 23.8.2011, 13:03 | ||
| Да ... тут целое обоснование концепции расстановки логических разделителей! =)) к стати я тот код так вывел потому, что сильно затупил и в запаре (ихмо чувство пустяковости задачи не покидало меня), и чувствуя беспричинную злость на свой комп и всех, кто причастен к разработке SQL - выложил код как он был в результате моих манипуляций... а так в коде у меня все выглядит так..
так что полностью согласен на счет "не писать все в одну строку." На счет запятых... подумаю сейчас за обедом... может это и имеет смысл |
| Автор: rodnover 23.8.2011, 13:41 |
| Смысл ставить имеет. Хотя, я неделю не мог привыкнуть к такому оформлению. А ставить запятые на отдельных строчках тоже минус вместо одной строчки две придется комментировать. |