Autor Zpráva
Chatík
Profil
Ahoj všem,
měl bych zase jeden dotaz.
Mám 2 tabulky zahranicni a domaci.
Mají úplně stejnou struktůru ale obsahově jsou jiné.
V zahranicni jsou uloženy jen zahranični interpreti a v domaci jen domáci interpreti.
Na webu bych chtěl zobrazovat nejnovější přidané interprety z obou tabulek naráz.
Jde toto udělat jedním sql dotazem?
Je mi jasné že se mi dostane odpovědi že to mám špatně navržené :D
Díky za radu.
Taps
Profil
Chatík:
zkus použít union
SELECT * from tabulka1 UNION ALL SELECT * from tabulka2
Chatík
Profil
Díky moc.


Je i toto správně?
SELECT *
FROM (

SELECT Contentgroup, Album, vlozeni,Web, Track
FROM `zahranicni`
UNION ALL
SELECT Contentgroup, Album, vlozeni,Web, Track
FROM `domaci`
)s  WHERE Track = '1'
GROUP BY Album DESC
ORDER BY vlozeni DESC
LIMIT 10
Tori
Profil
Část WHERE bych možná dala ne do vnějšího SELECTu, ale do obou vnořených. Nejsem si jistá, jestli MySQL je schopné použít index na sloupci Track pokud to máte takhle. Možná ano, koukněte na výsledek EXPLAIN.
Chatík
Profil
Ano dokáže, díky za Váš čas.

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: