Linguaggio SQL per Microsof Office Access

Discussioni su eventuali problemi tecnici.

Linguaggio SQL per Microsof Office Access

Messaggiodi purificatore inviato martedì 3 novembre 2009, 18:36

Qualcuno se ne intende di questo linguaggio?
Cosi se ho domande so a chi chiedere :D
Scusate per gli errori ma sono DISLESSICO!
Cliccate vi farà morire dal ridere::D
http://www.tribals.it/56162-it1.html

http://s1.knightsdivine.it/
purificatore
Membro [EI] inattivo
Membro [EI] inattivo
 
Messaggi: 843
Iscritto il: domenica 16 dicembre 2007, 16:57
Località: Svizzera
Gioco preferito: Call of Duty IV
Ruolo in-game: AssaltoECecchino
Xfire: purificatore

Re: Linguaggio SQL per Microsof Office Access

Messaggiodi ros inviato martedì 3 novembre 2009, 19:59

hai rotto... cosa c'è
:)
Avatar utente
ros
Amministratore
Amministratore
 
Messaggi: 4209
Iscritto il: domenica 16 dicembre 2007, 17:14
Località: Padova
Record: 1
Gioco preferito: Project Reality BF2 Mod
Xfire: ros86

Re: Linguaggio SQL per Microsof Office Access

Messaggiodi purificatore inviato martedì 3 novembre 2009, 20:12

haha XD

allora,ho un problema da risolvere ma non capisco perche con un metodo funziona e con l'altro no.
Allora devo trovare i libri che costano meno di 100 ma piu di 50 e faccio:

SELECT produit_description, produit_prixUnitaire
FROM tblProduit
WHERE produit_prixUnitaire >=50
AND produit_prixUnitaire <=100

Posso anche fare in where:
WHERE produit_prixUnitaire BETWEEN 50 AND 100

Fin qui mi funzione. Dopo mi chiede di trovare i libri che costano meno di 50 e piu di 100.

Allora la soluzione mi da:
SELECT produit_description, produit_prixUnitaire
FROM tblProduit
WHERE NOT BETWEEN 50 AND 100

Ma se faccio nel seguente modo non funziona:

SELECT produit_description, produit_prixUnitaire
FROM tblProduit
WHERE produit_prixUnitaire <=50
AND produit_prixUnitaire >=100

Perche? ho sbagliato qualcosa? :S
Scusate per gli errori ma sono DISLESSICO!
Cliccate vi farà morire dal ridere::D
http://www.tribals.it/56162-it1.html

http://s1.knightsdivine.it/
purificatore
Membro [EI] inattivo
Membro [EI] inattivo
 
Messaggi: 843
Iscritto il: domenica 16 dicembre 2007, 16:57
Località: Svizzera
Gioco preferito: Call of Duty IV
Ruolo in-game: AssaltoECecchino
Xfire: purificatore

Re: Linguaggio SQL per Microsof Office Access

Messaggiodi ros inviato martedì 3 novembre 2009, 20:23

Fin qui mi funzione. Dopo mi chiede di trovare i libri che costano meno di 50 e piu di 100.

WHERE produit_prixUnitaire <=50
AND produit_prixUnitaire >=100


Immagine

leggi meglio la consegna e applica la logica che hai usato se avessi fatto gli esami di teoria della patente in italia.
devi trovare i libri che costano meno di 50 e anche quelli che costano più di 100
quindi il libro che cerchi con l'istruzione sql deve avere prezzo minore di 50 oppure maggiore di 100
Codice: Seleziona tutto
WHERE produit_prixUnitaire <=50
OR produit_prixUnitaire >=100

è vero che non esiste libro che abbia prezzo minore di 50€ e allo stesso tempo maggiore di 100€ puri? :v:
Avatar utente
ros
Amministratore
Amministratore
 
Messaggi: 4209
Iscritto il: domenica 16 dicembre 2007, 17:14
Località: Padova
Record: 1
Gioco preferito: Project Reality BF2 Mod
Xfire: ros86

Re: Linguaggio SQL per Microsof Office Access

Messaggiodi CRAZYCOW inviato martedì 3 novembre 2009, 20:26

Puri da ignorante in materia credo sia perchè nella seconda ipotesi, ovvero quella di dover trovare i prezzi minori di 50 e maggiori di 100, in realtà non ti si chiede di trovare un "range" di prezzi del prodotto, piuttosto di escluderlo (escludi appunto la fascia che va da 50 a 100), da qui la funzione

WHERE NOT BETWEEN 50 AND 100

Secondo me la stringa che gli dai tu, dove gli dici di cercare prodotti che costano meno di 50 ma più di 100 genera un conflitto se cosi si puo dire perchè in realtà è un controsenso...
Te lo ripeto, semplicemente osservando, non so nemmeno di cosa stai parlando, ma leggendo queste poche righe che hai postato e la problematica credo proprio che sia cosi..
Immagine
Immagine
Avatar utente
CRAZYCOW
Clan Leader
Clan Leader
 
Messaggi: 3449
Iscritto il: mercoledì 2 gennaio 2008, 21:05
Località: Guidonia (RM)
Record: 1
Gioco preferito: Arma II
Ruolo in-game: OfficerIPilotILAT
Xfire: eicrazycow

Re: Linguaggio SQL per Microsof Office Access

Messaggiodi purificatore inviato martedì 3 novembre 2009, 20:32

ros ci sono XD e piu di uno XD

cmq piccolo errorino, nella mia ipotesi non ci sono gli = solo maggiore o minore.

Crazy ok pero non riesco a capire il motivo del perche non funzioni XD potrebbe essere domanda di esame XD
Scusate per gli errori ma sono DISLESSICO!
Cliccate vi farà morire dal ridere::D
http://www.tribals.it/56162-it1.html

http://s1.knightsdivine.it/
purificatore
Membro [EI] inattivo
Membro [EI] inattivo
 
Messaggi: 843
Iscritto il: domenica 16 dicembre 2007, 16:57
Località: Svizzera
Gioco preferito: Call of Duty IV
Ruolo in-game: AssaltoECecchino
Xfire: purificatore

Re: Linguaggio SQL per Microsof Office Access

Messaggiodi ros inviato mercoledì 4 novembre 2009, 2:04

no puri, allora non ti è chiaro come funziona l'SQL in generale

ripeto: non può esistere 1 libro che ha prezzo minore di 50€ e maggiore di 100€, perchè il prezzo di 1 libro è 1, quindi può essere minore di 50, oppure 50, oppure compreso tra 50 e 100, oppure 100, oppure maggiore di 100. E come giustamente sta cercando di farti capire crazy è un controsenso indicare nella clausola where che il prezzo sia minore di 50 E maggiore di 100.
La where la devi considerare come una domanda che l'sql si pone ogni volta che incontra un libro quindi

La tua where:
WHERE produit_prixUnitaire <=50 AND produit_prixUnitaire >=100
significa: il prodotto ha un prezzo minore o uguale a 50 e maggiore o uguale a 100?

tabella Prodotti
x 45
y 101
z 75
il prodotto "x" ha un prezzo minore o uguale a 50 e maggiore o uguale a 100?
risposta: no, 45 è minore o uguale a 50 però non è anche maggiore o uguale a 100 (non succederà mai che questa condizione sia vera), salto al prossimo prodotto e controllo la condizione.
il prodotto "y" ha un prezzo minore o uguale a 50 e maggiore o uguale a 100?
risposta: no, 101 è maggiore o uguale a 100 però non è anche minore o uguale a 50, salto al prossimo prodotto e controllo la condizione.
il prodotto "z" ha un prezzo minore o uguale a 50 e maggiore o uguale a 100?
risposta: no, 75 non è nè minore o uguale a 50 e nemmeno maggiore o uguale a 100, salto al prossimo prodotto e controllo la condizione.
etc

La where giusta:
WHERE produit_prixUnitaire <=50 OR produit_prixUnitaire >=100
significa:
il prodotto ha un prezzo minore o uguale a 50 oppure maggiore o uguale a 100?

tabella Prodotti
x 45
y 101
z 75

il prodotto "x" ha un prezzo minore o uguale a 50 oppure maggiore o uguale a 100?
risposta: si, il prodotto "x" ha prezzo minore di 50 e mi basta per sapere che la condizione è verificata, salto al prossimo prodotto e controllo la condizione.
il prodotto "y" ha un prezzo minore o uguale a 50 oppure maggiore o uguale a 100?
risposta: si, il prodotto "x" ha prezzo maggiore di 100 e mi basta per sapere che la condizione è verificata, salto al prossimo prodotto e controllo la condizione.
il prodotto "z" ha un prezzo minore o uguale a 50 oppure maggiore o uguale a 100?
risposta: no, il prodotto "z" ha un prezzo che non soddisfa nemmeno una delle 4 condizioni di cui è composta la condizione: 75 non è minore di 50, nè uguale a 50, nè uguale a 100, nè maggiore di 100, salto al prossimo prodotto e controllo la condizione.
etc etc

edit: tengo il >= e <= perchè è un esempio leggermente più complesso, che se ti fanno all'esame ti manda in pappa, almeno lo leggi qua e sei a posto
Avatar utente
ros
Amministratore
Amministratore
 
Messaggi: 4209
Iscritto il: domenica 16 dicembre 2007, 17:14
Località: Padova
Record: 1
Gioco preferito: Project Reality BF2 Mod
Xfire: ros86

Re: Linguaggio SQL per Microsof Office Access

Messaggiodi purificatore inviato mercoledì 4 novembre 2009, 8:46

aaaah okok :D quindi l'errore è AND :)
Ok thx capito :D
Ros saro felicissimo di tenerti aggiornato in caso di domande future :D :XD: :XD:
Scusate per gli errori ma sono DISLESSICO!
Cliccate vi farà morire dal ridere::D
http://www.tribals.it/56162-it1.html

http://s1.knightsdivine.it/
purificatore
Membro [EI] inattivo
Membro [EI] inattivo
 
Messaggi: 843
Iscritto il: domenica 16 dicembre 2007, 16:57
Località: Svizzera
Gioco preferito: Call of Duty IV
Ruolo in-game: AssaltoECecchino
Xfire: purificatore

Re: Linguaggio SQL per Microsof Office Access

Messaggiodi ros inviato mercoledì 4 novembre 2009, 10:50

all'inizio ti ho scritto che non ti era chiaro come funziona l'sql, ora hai capito che la where controlla ogni riga della tabella e controlla la condizione... in realtà era anche un problema di logica semplice e spero tu l'abbia capito adesso
Avatar utente
ros
Amministratore
Amministratore
 
Messaggi: 4209
Iscritto il: domenica 16 dicembre 2007, 17:14
Località: Padova
Record: 1
Gioco preferito: Project Reality BF2 Mod
Xfire: ros86


Torna a Help & Hardware

Chi c’è in linea

Visitano il forum: Nessuno e 5 ospiti

cron