$varanno=1962 and 1963 And 1964codice:$query="SELECT *, date_format(Anno, '%d.%m.%Y') as new_data FROM completa WHERE YEAR(Anno) =" . $varanno ;
mi estrae solo 1962 perchè?
$varanno=1962 and 1963 And 1964codice:$query="SELECT *, date_format(Anno, '%d.%m.%Y') as new_data FROM completa WHERE YEAR(Anno) =" . $varanno ;
mi estrae solo 1962 perchè?
Ciro Marotta - Programmatore JAVA - PHP
Preferisco un fallimento alle mie condizioni che un successo alle condizioni altrui.
Non puoi usare una uguaglianza... come dire :
2004 = 1962 and 1963 And 1964
Devi usare la funzione IN()
$varanno = '1962, 1963, 1964'codice:SELECT *, date_format(Anno, '%d.%m.%Y') as new_data FROM completa WHERE YEAR(Anno) IN($varanno) ;
![]()
Il silenzio è spesso la cosa migliore. Pensa ... è gratis.
Io credo che lui volesse estrarre le righe dove l'anno corrispondeva agli anni che aveva iposato lui in varanno. Ma and preede che il campo year\li contenga tutti! Al posto di and usa or.
una sintassi del tipo:[supersaibal]Originariamente inviato da mircov
Io credo che lui volesse estrarre le righe dove l'anno corrispondeva agli anni che aveva iposato lui in varanno. Ma and preede che il campo year\li contenga tutti! Al posto di and usa or. [/supersaibal]
year(data) = 1930 OR 1960 OR 2000
proprio non esiste...
![]()
Il silenzio è spesso la cosa migliore. Pensa ... è gratis.
no scusate io ho proprio questa necessità ciooè quella di estrarre i record dove anno è uguale a tre valori.
perchè non ci riesco?
mi dici di + su sto IN ?
Ciro Marotta - Programmatore JAVA - PHP
Preferisco un fallimento alle mie condizioni che un successo alle condizioni altrui.
Cosi' ti dovrebbe estrarre tutti i dati relativi agli anni 1962, 1963 e 1964....Codice PHP:
SELECT *,
date_format(Anno, '%d.%m.%Y') as new_data
FROM
completa
WHERE
YEAR(Anno) = '1962'
OR YEAR(Anno) = '1963'
OR YEAR(Anno) = '1964'
![]()
Cosi' come lo esprimi ti servirebbe un miracolo...[supersaibal]Originariamente inviato da ciro78
no scusate io ho proprio questa necessità ciooè quella di estrarre i record dove anno è uguale a tre valori.
perchè non ci riesco?
mi dici di + su sto IN ? [/supersaibal]![]()
se anno = 1980
non puo' essere uguale anche a 1981 e 1982.
Sia le query con IN() oppure quelle con OR dovrebbero darti lo stesso risultato. Con IN() verifica che il valore cercato sia presente all'interno di una serie di valori....
![]()
Il silenzio è spesso la cosa migliore. Pensa ... è gratis.
si infatti rileggendo la query mi rendo conto che al limite serviva or e poi comunque dovevo ripetere l'uguaglianza
penso che in sia + indicata la vedo + semplice
ciao e grazie
Ciro Marotta - Programmatore JAVA - PHP
Preferisco un fallimento alle mie condizioni che un successo alle condizioni altrui.
Era questo quello che intendevo con "usa or al posto di and". Evidentemente non sono stato chiaro.[supersaibal]Originariamente inviato da magò11
Cosi' ti dovrebbe estrarre tutti i dati relativi agli anni 1962, 1963 e 1964....Codice PHP:
SELECT *,
date_format(Anno, '%d.%m.%Y') as new_data
FROM
completa
WHERE
YEAR(Anno) = '1962'
OR YEAR(Anno) = '1963'
OR YEAR(Anno) = '1964'
[/supersaibal]