Homepage  Il progetto dsy.it è l'unofficial support site dei corsi di laurea del Dipartimento di Scienze dell'Informazione e del Dipartimento di Informatica e Comunicazione della Statale di Milano. E' un servizio degli studenti per gli studenti, curato in modo no-profit da un gruppo di essi. I nostri servizi comprendono aree di discussione per ogni Corso di Laurea, un'area download per lo scambio file, una raccolta di link e un motore di ricerca, il supporto agli studenti lavoratori, il forum hosting per Professori e studenti, i blog, e molto altro...
In questa sezione è indicizzato in textonly il contenuto del nostro forum


.dsy:it. .dsy:it. Archive > Community > Forum De Bell Tolls
 
[MS ACCESS] Query
Clicca QUI per vedere il messaggio nel forum
0m4r
come si fa utilizzando MS ACCESS a realizzare una query in modo tale che mi siano ritornati solo i record compresi in un certo intervallo?
cioè, se a me interessano solo i record dal 5 al 10 come faccio a fare uan query che me li restituisca?

fozzy
hai un campo ID?

select * from tabella
where ID
between 5 AND 10;

dovrebbe essere piú o meno standard... o no? al limnite usa il wizard questa non dovrebbe avere problemi a crearla..

0m4r
beetween eccolo, non me lo ricordavo piu...ora provo e ti dico.
comq al solito: grazie!

fozzy
beh intanto potevi risolvere (in maniera non proprio pulita) con un

where ((x<10) AND (x>5))

:)

incredibile.. ho capito qualcosa di basi di dati??? :lol:

Lunik
Off-Topic:
e meno male ke avevi dato gestione dell'informazione!!

0m4r
Originally posted by fozzy
beh intanto potevi risolvere (in maniera non proprio pulita) con un

where ((x<10) AND (x>5))

:)

incredibile.. ho capito qualcosa di basi di dati??? :lol:


e quell' x cosa sarebbe?

fozzy
l'ID... non mi veniva in mente ed ho messo quello :D

0m4r
non mi va bene l'ID perche se io nella tabella cancello dei record poi non ne ho piu 5 ritornati dalla query ma magari solo 4 perche uno l'ho cancellato...

fozzy
ma usando between hai lo stesso problema...

0m4r
perche questa insert da l'errore riportato nell'immagine? E sopratutto cosa cavolo significa l'errore?
code:
INSERT INTO SistemaSocieta VALUES ((SELECT LAST(ID) FROM SistemaPartenza), 4)



kokorina
Originally posted by 0m4r
non mi va bene l'ID perche se io nella tabella cancello dei record poi non ne ho piu 5 ritornati dalla query ma magari solo 4 perche uno l'ho cancellato...


se usi l'ID con formato contatore si, ma se lo usi come formato testo no

fozzy
sbattone pazzesco gestire poi correttmaente l'ordinamento.. Quando cancelli devi cambiare il numero a tutti i successivi...
meglio inventarsi qualcosa di diverso....
ma pure te 0m4r... usare PHP no? :D

0m4r
Originally posted by fozzy
ma pure te 0m4r... usare PHP no? :D


io uso java che è meglio...

fozzy
e allora trovati le funzioni di accesso al DB, ordina per ID e salta direttamente alla riga che ti interessa...

:ciaociao:

0m4r
con access non si puo, almeno, io non ci sono riuscito...

fozzy
io accedevo in PHP ad un DB access.. non mi dire che con Java ("che è meglio") non si riesce.. :D

0m4r
si si riesce ad accedervi, ma poi non riesco a "navigare" fra il risultato della query...

webwarrior
Cosa intendi per "i record dal 5° al 10°" ? Sarebbe corretto specificare un criterio d'ordine poiché Access (et al.) tendono a riordinare i recordset non ordinati. Boh...

Cmq prova con SELECT TOP 10 * FROM tabella WHERE clausola ORDER BY criterio

Oppure cose più esotiche tipo
SELECT TOP 5 * FROM
( SELECT TOP 10 FROM tabella WHERE clausola ODER BY criterio ) ORDER BY criterio DESC

-> insomma prendi i primi dieci, inverti l'odine e poi prendi i primi 5, io sto andando a braccio.

webwarrior
Originally posted by 0m4r
perche questa insert da l'errore riportato nell'immagine? E sopratutto cosa cavolo significa l'errore?
code:
INSERT INTO SistemaSocieta VALUES ((SELECT LAST(ID) FROM SistemaPartenza), 4)




Non devi specificare i nomi delle colonne?

INSERT INTO SistemaSocieta (Campo1, Campo2) VALUES (....)

0m4r
webwarrior mi hai dato una buona idea anche te...

0m4r
Originally posted by webwarrior
Non devi specificare i nomi delle colonne?

INSERT INTO SistemaSocieta (Campo1, Campo2) VALUES (....)


solo se non li inserisco tutti...o sbaglio?
e poi il messaggio di errore non è che mi sembri poi cosi intelligente!

webwarrior
Originally posted by 0m4r
solo se non li inserisco tutti...o sbaglio?
e poi il messaggio di errore non è che mi sembri poi cosi intelligente!


Bhé, sì, l'errore non è molto chiaro...

La sintassi è quella, altrimenti in che ordine stai dando i valori? Non è intrinseco nel sistema l'ordinamento effettivo delle colonne, quindi glielo devi dire tu.

Amenoché fai un SELECT INTO tabella

Powered by: vbHome (lite) v4.1 and vBulletin v2.3.1 - Copyright ©2000 - 2002, Jelsoft Enterprises Limited
Mantained by dsy crew (email) | Collabora con noi | Segnalaci un bug | Archive | Regolamento |Licenze | Thanks | Syndacate