Autor Zpráva
kabanos
Profil *
Ahoj,
dá se nějak zpřeházet pořadí sloupců v Mysql tabulce. Příklad mám v tabulce sloupce id,zprava,prijmeni,jmeno a chtěl bych, aby se mi v tabulce zobrazovali např. v pořadí id,jmeno,prijmeni,zprava.

Chci to hlavně z toho důvodu, že mám více tabulek a chci je spojit. Každá tabulka má sice stejné sloupce jako ty ostatní, ale bohužel v jiném pořadí. Spojení bych chtěl provést tak, že databázy vyexportuju a pak vyedituju soubor a spojim si je ->Proto potřebuji stejné pozice stejných sloupců. Nikde se mi to nepodařilo najít.

Dík
kajaman
Profil
Myslím, že přesunovat sloupce v MySQL nejde, protože to k ničemu není.
Jakým způsobem budeš databázi exportovat a tabulky spojovat - v jakém souboru?
Mastodont
Profil
INSERT INTO nova_tabulka SELECT ....
nightfish
Profil
manuál mysql říká, že když už to opravdu potřebuješ udělat, tak následovně:

1) vytvořit novou tabulku se správným pořadím sloupců
2) INSERT INTO `jmenonovetabulky` SELECT sloupec2, sloupec1, sloupec3 FROM `staratabulka`;
3) DROP TABLE `staratabulka`;
4) ALTER TABLE `jmenonovetabulky` RENAME `staratabulka`;
kabanos
Profil *
no vyexportuju celou databázi do sql souboru, kde se mi vytvoří (kromě dalšícho kódu) řádky typu:

INSERT INTO `st_data1` VALUES (1, '1', 'a', 'b');
INSERT INTO `st_data1` VALUES (2, '1', 'd', 'e');

INSERT INTO `st_data2` VALUES (1, 'a', '1', 'b');
INSERT INTO `st_data2` VALUES (2, 'd', '1', 'e');

Které bych pak dal k sobě, ale problém mám v tom pořadí jednotlivých sloupců v každé z tabulek.
RAmses
Profil
kabanos
vyexportuj si pouze data do csv souboru, který můžeš otevřít v Excelu a jendotlivé sloupce přeházet jak potřebuješ. V tabulce (vyprázdněné) si upravíš pořadí atributů a poté importuješ data z csv souboru. Každopádně si nejdřív udělej zálohu do sql
_es
Profil
Možno sa bude viac hodiť:
LOAD DATA LOCAL INFILE
kabanos
Profil *
Hmm, díky. Asi to udělám dle Nightfishe (jistota). Přes Excel to taky občas dělám, ale v tomto konkrétním případě to moc nejde, protože tam mám různá data (např. datumy a čísla začínající 0,...a nevim co ještě dalšího) které mi Excel zprzní, takže si nejsem jistý výsledkem.

Jinak dík všem
leossilny
Profil
... Pro spojování více tabulek do jednoho výstupu v rámci jednoho SQL dotazu lze také použít SQL příkaz UNION:
SELECT Column1, Column2 FROM Table1
UNION
SELECT Column1, Column2 FROM Table2

Pořadí sloupců zde pak ovlivníte už v samotném zápisu dotazu. Jediná podmínka je, že v obou selektech musí být stejný počet sloupců.
Možná to bude pro Vás jednodušší než dělat exporty a ručně je spojovat.

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