Salve a tutti, come si fa ad estrarre gli ultimi film che ho inserito nel mese corrente?
Io ho fatto
$query=mysql_query("select * from film where mese=Now()") or die(mysql_error());
E non mi stampa niente, nel senso che non me li trova....
Salve a tutti, come si fa ad estrarre gli ultimi film che ho inserito nel mese corrente?
Io ho fatto
$query=mysql_query("select * from film where mese=Now()") or die(mysql_error());
E non mi stampa niente, nel senso che non me li trova....
codice:select * from film where extract(year_month from campo_data) = extract(year_month from curdate() )
scusa ma in questo modo
$query=mysql_query("select * from film
where extract(year_month from mese) = extract(year_month from curdate())") or die(mysql_error());
dovrebbe mettere tutti i film che ho inserito nel mese di Gennaio, ed invece non me li stampa...(la stampa la faccio dopo)
Grazie![]()
Ma il campo mese cosa contiene? Immagino non una data.Originariamente inviato da guliver81
scusa ma in questo modo
$query=mysql_query("select * from film
where extract(year_month from mese) = extract(year_month from curdate())") or die(mysql_error());
dovrebbe mettere tutti i film che ho inserito nel mese di Gennaio, ed invece non me li stampa...(la stampa la faccio dopo)
Grazie![]()
![]()
contiene il mese, ma io il mese lo scrivo con la prima lettera grande. La select lo confronta con tutte le lettere piccole(ad esempio gennaio e non Gennaio come l'ho scritto io)??
La query che ti ho scritto presupponeva che il campo fosse di tipo date e confrontava mese-anno della data corrente e del campo.Originariamente inviato da guliver81
contiene il mese, ma io il mese lo scrivo con la prima lettera grande. La select lo confronta con tutte le lettere piccole(ad esempio gennaio e non Gennaio come l'ho scritto io)??
Prova così (è una soluzione di fortuna)
codice:select * from film where mese = elt(month(curdate()), 'Gennaio','Febbraio','Marzo',....)
Scusa, ma facendo cosi' mi restituisce tutti i film di tutti i mesi, invece non quelli del mese corrente e dell'anno corrente...Come si faaaaaaaaaa?VVoVe:
Se siamo a gennaio la query ti restituirà tutti i record in cui nel campo mese hai scritto gennaio. Se il campo mese contiene il mese in formato letterale l'anno da dove lo dovrebbe ricavare?Originariamente inviato da guliver81
Scusa, ma facendo cosi' mi restituisce tutti i film di tutti i mesi, invece non quelli del mese corrente e dell'anno corrente...Come si faaaaaaaaaa?VVoVe:
allora io ho un'altro campo anno.E poi facendo in quel modo mi restituisce tutti i mesi e nn quello relativo al mese corrente
Grazie![]()
Originariamente inviato da guliver81
E poi facendo in quel modo mi restituisce tutti i mesi e nn quello relativo al mese correntecodice:CREATE TABLE `film` ( `id` int(11) NOT NULL auto_increment, `film` varchar(50) default NULL, `mese` varchar(20) default NULL, `anno` smallint(6) default NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; /*Data for the table `film` */ insert into `film` (`id`,`film`,`mese`,`anno`) values (1,'film1','Gennaio',2007); insert into `film` (`id`,`film`,`mese`,`anno`) values (2,'film2','Febbraio',2007); insert into `film` (`id`,`film`,`mese`,`anno`) values (3,'film3','Gennaio',2006); select * from film where mese = elt(month(curdate()), 'Gennaio','Febbraio','Marzo','Aprile','Maggio','Giugno','Luglio', 'Agosto','Settembre','Ottobre','Novembre','Dicembre') // id 1 e 3 select * from film where mese = elt(month(curdate()), 'Gennaio','Febbraio','Marzo','Aprile','Maggio','Giugno','Luglio', 'Agosto','Settembre','Ottobre','Novembre','Dicembre') and anno = year(curdate()) // id 1
![]()