Originariamente inviato da piero.mac
group by raggruppa, order by esegue un sort, LIMIT ne definisce la quantita'
....
where
order by
limit 0,6 (a partire dal record 0 visualizzane 6)
oppure limit 6 (i primi 6 a prescindere)
grazie per la dritta. ora mi si è presentato un nuovo problema, ossia ottenere la somma di record di una colonna, cosa facile quando la colonna appartiene alla tabella di partenza, ma non trovo una soluzione quando la colonna appartiene alla select ottenuta.
mi spiego meglio. ho fatto una select in cui creavo un menu con i relativi costi per quella scelta di prodotti. quindi ottengo una lista di menu.ne ho presi sei di questi menu e volevo calcolarmi il costo totale.ho fatto sum(costo_totale) ma la colonna per il database non esiste.
posto il codice della query per farvi un'idea più precisa:
codice:
SELECT tb1.Nome AS Primo, tb2.Nome AS Secondo, tb3.Nome AS Dessert, tb4.Nome AS Bevanda, tb5.Nome AS Pane ,(tb1.valore+tb2.valore+tb3.valore+tb4.valore+ tb5.valore) AS Codice_menu, (tb1.Costo+tb2.Costo+tb3.Costo+tb4.Costo+tb5.Costo) AS Costo_totale FROM PRODOTTO_ALIMENTARE AS tb1, PRODOTTO_ALIMENTARE AS tb2, PRODOTTO_ALIMENTARE AS tb3, PRODOTTO_ALIMENTARE AS tb4, PRODOTTO_ALIMENTARE AS tb5 WHERE tb1.Nome <> tb2.Nome AND tb1.Nome <> tb3.Nome AND tb1.Nome <> tb4.Nome AND tb1.Nome <> tb5.Nome AND tb2.Nome <> tb3.Nome AND tb2.Nome <> tb4.Nome AND tb2.Nome <> tb5.Nome AND tb3.Nome <> tb4.Nome AND tb3.Nome <> tb5.Nome AND tb4.Nome <> tb5.Nome AND tb1.Tipologia="primo" AND tb2.Tipologia="secondo" AND tb3.Tipologia="dessert" AND tb4.Tipologia="bevanda" AND tb5.Tipologia="Pane" AND tb1.Indicazione="celiachia" AND tb2.Indicazione="celiachia" AND tb3.Indicazione="celiachia" AND tb4.Indicazione="celiachia" AND tb5.Indicazione="celiachia" GROUP BY Codice_menu HAVING Costo_totale<=4.50 LIMIT 1,6;