Autor Zpráva
mzk
Profil *
ahojte,
chtěl bych poprosit zkušenějších, zda by jste mi mohli překontrolovat dotaz, případně co by jste na něm změnili.
Mám dvě tabulky (faktura a polozky) a potřebuju je spojit. Faktury generuju pomocí cronu tak potřebuji aby se vždy vybrala jen jedna (faktura.id) a k ní se načetly položky.
SELECT *
    FROM (
        SELECT *
        FROM faktura WHERE faktura.stav = 1
        ORDER BY faktura.id
        LIMIT 1
    ) AS fakt                
    INNER JOIN polozky ON fakt.id = polozky.id  WHERE polozky.stav = 1 
* - místo nich dám pak výčet sloupců
Kajman
Profil
Jaký je s tím dotazem problém? Jaké jsou indexy? Jaká je četnost hodnot sloupců stav? Jaký je explain?
mzk
Profil *
Kajman:
s dotazem problé nemám, jen jestli je tak nějak správně - není tam nějaká chyba, nebo zda se to nedá zapsat lépe. Tak asi bude vše ok. Já jsem dosud používal jen základní dotazy bez spojení, tak se ptám. Díky za odpověď


Kajman:
Jaká je četnost hodnot sloupců stav? Jaký je explain?
1 PRIMARY <derived2> system NULL NULL NULL NULL 1
1 PRIMARY faktura ref id id 3 const 2 Using where
2 DERIVED polozka index NULL PRIMARY 3 NULL 1 Using where

a četnost stavů je zatím 3 a bude jich tak cca 10

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: