Autor Zpráva
nethor
Profil
Prosím o pomoc;
Potřebuji duplikovat komplet celý řádek databáze, jen s odlišným id.
v MySQL nato bude určitě jednoduchý přikaz, jen nemohu přijít na to jaký.
Něco jako
INSERT INTO `databaze`.`tabulka` 
SELECT * FROM `databaze`.`tabulka`  WHERE id = 1;

Jen z toho vynechat id.
(#1062 - Duplicate entry '1' for key 1 )
Kacko
Profil
INSERT INTO `databaze`.`tabulka` (sloupec1,sloupec2)  VALUES(
SELECT sloupec1,sloupec2 FROM `databaze`.`tabulka`  WHERE id = 1);


Proc chcete mit v jedne tabulce dva shodne zaznamy?
nethor
Profil
Kacko:
Proc chcete mit v jedne tabulce dva shodne zaznamy?
To není důležité. (dílčí záležitost)

sloupec1,sloupec2 .. je dost krkolomné , sloupců je tam asi 20 .
Určitě existuje elegantnější řešení.
Kacko
Profil
nethor:
Tak schvalne kdo prijde s necim elegantnejsim a rychlejsim na zpracovani(ON DUPLICATE nepovazuji za elegantnejsi, navic nelze pouzit vsude).

Narazim na to, ze 2 shodne zaznamy v 1 tabulce (navic pokud ma 20 sloupcu) mi prijde jako plytvani..
panther
Profil
nethor:
Určitě existuje elegantnější řešení.
buď * pro všechny nebo je vypsat. Jiné možnosti nejsou.
nethor
Profil
.. No ten script má usnadnit práci při vkládání podobných záznamů.
Takže to plýtvání není, ale to není podstatné.

INSERT INTO `databaze`.`tabulka` (sloupec1,sloupec2)  VALUES(
SELECT sloupec1,sloupec2 FROM `databaze`.`tabulka`  WHERE id = 1);


hází syntax error ... near 'SELECT `id_str`, `priorita ...
myslím, že tam nemá být values

při vypsání více než jednoho sloupce zase
Operand should contain 1 column(s)


tak nevim.
Kajman_
Profil *
Ano u insert select sytnaxe values nejsou. Stačí kliknout na insert, tam je to popsáno.
Kacko
Profil
Kajman, nethor:
Moje chyba, omlouvam se.
nethor
Profil
Jo jde to takto:
INSERT INTO `tabulka`
SELECT NULL , `id_odst`, `priorita`, `alt`, `max`, `min`, `zobrazovat`, `miniatura` 
FROM `tabulka`  WHERE id = 1

Aspoň, že se to nemusí vypisovat 2x

Stejně by se hodil zápis vyber všechny kromě uvedených
něco jako
SELECT *(!`id`) FROM `tabulka`

Fakt nic takového neexistuje?

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0