PDA

View Full Version : [MYSQL] Utilizzo della funzione MAX()


prete01
01-03-2007, 21:21
Come faccio a far funzionare il seguente codice SQL?

SELECT *
FROM campionato
WHERE MAX(giornata)

So già che è errato ma a me serve proprio questo...e cioè...ho una tabella CAMPIONATO dove ho bisogno di estrarre tutti i record che hanno il numero massimo inserito nel campo giornata. In pratica devo ricavare tutti i risultati delle partite dell'ultima giornata. Come posso fare? :mc:

Blackat
01-03-2007, 23:01
Prova questa...

SELECT * FROM Campionato c WHERE giornata = (SELECT MAX(giornata) FROM campionato cs WHERE c.id_campionato = cs.id_campionato)

misterx
02-03-2007, 06:02
non ci va anche un ........GROUP BY giornata ? :stordita:

prete01
02-03-2007, 17:20
Prova questa...

SELECT * FROM Campionato c WHERE giornata = (SELECT MAX(giornata) FROM campionato cs WHERE c.id_campionato = cs.id_campionato)

..ehm... e cosa sarebbero c cs ecc? :rolleyes:

@misterx
se faccio GROUP BY giornata mi mette un solo risultato proprio perchè mi raggruppa tutte le partite che hanno la giornata più alta :muro:

misterx
02-03-2007, 18:33
..ehm... e cosa sarebbero c cs ecc? :rolleyes:

@misterx
se faccio GROUP BY giornata mi mette un solo risultato proprio perchè mi raggruppa tutte le partite che hanno la giornata più alta :muro:

era un'ipotesi

cs credo sia un ALIAS

anonimizzato
02-03-2007, 18:47
Come faccio a far funzionare il seguente codice SQL?

SELECT *
FROM campionato
WHERE MAX(giornata)

So già che è errato ma a me serve proprio questo...e cioè...ho una tabella CAMPIONATO dove ho bisogno di estrarre tutti i record che hanno il numero massimo inserito nel campo giornata. In pratica devo ricavare tutti i risultati delle partite dell'ultima giornata. Come posso fare? :mc:

select * from campionato where campo = (select max(campo) from campionato);

Così ricavi tutti i record che hanno il massimo valore associato in campo.

Spero di non aver capito male ciò di cui avevi bisogno.

Ciao.

prete01
02-03-2007, 21:30
Sei un mito Sgurbat!! Ho cambiato solo un pochino la tua sottoquery (vero?!) e ora ho quello che volevo!
SELECT *
FROM campionato
WHERE giornata = (SELECT MAX(giornata) FROM campionato WHERE campionato = 'variabile') AND campionato = 'variabile'

Grazie ancora!

anonimizzato
03-03-2007, 10:56
Prego figurati.

Comunque la mia subquery era identica come logica a quella di Blackhat.

Bye. ;)

Blackat
03-03-2007, 12:13
Comunque la mia subquery era identica come logica a quella di Blackhat.

Blackat...grazie :incazzed:

anonimizzato
03-03-2007, 16:09
Blackat...grazie :incazzed:

LOL scusa :D

Anche "cappello nero" non è male però dai! :stordita: