PDA

View Full Version : Estrarre un insieme casuale di record utilizzando SQL


natasha
29-06-2004, 10:57
Buongiorno a tutti,
sapete se esiste un modo di selezionare un insieme casuale di record da una tabella utilizzando SQL standard?
Kisses,

Nat

mailand
29-06-2004, 11:17
a parte che forse era meglio usare la sezione "programmazione"... ;)
cmq da che db devi estrarre i dati?

Leron
29-06-2004, 12:18
sezione sbagliata

spostato

cionci
29-06-2004, 12:42
Che io sappia non si può fare con le istruzioni SQL standard... Devi ricorrere a qualche feature particolare del DBMS che usi o alla manipolazione dei record via codice...

natasha
29-06-2004, 13:03
per mailand: il db che devo usare è FileMaker Pro

mailand
29-06-2004, 14:43
Originariamente inviato da cionci
Che io sappia non si può fare con le istruzioni SQL standard... Devi ricorrere a qualche feature particolare del DBMS che usi o alla manipolazione dei record via codice...

quoto cionci...
in sql non esiste un comando "random", eventualmente chessò in oracle potresti FORSE creare delle stored procedures o delle function che ti permettano di farlo. imho è un comando abbastanza senza senso in sql, anche perchè lavorando su un db di solito hai bisogno di risposte precise a domande precise... ;)
e purtroppo non conosco FileMaker Pro...:(

beppegrillo
29-06-2004, 15:11
Se utilizzi mysql, fai così
SELECT * FROM tablename
WHERE somefield='something'
ORDER BY RAND() LIMIT x"

Dove x è ovviamente il numero di rows che ti interessa.:)

beppegrillo
29-06-2004, 15:12
Appena letto che chiedevi in sql standard, sorry non esiste :(

mmx[ngg]
29-06-2004, 21:59
Molti db utilizzano da un pò di tempo a questa parte la colonna ROWID ke identifica in modo univoco un'occorrenza all'interno di una tabella. Se su FileMaker Pro esiste puoi sfruttarla insieme al timestamp per tirare fuori dati casuali.