Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 14

Discussione: i RS si sovrascrivono?

  1. #1

    i RS si sovrascrivono?

    Ecco il senso della mia domanda
    faccio una ricerca con LIKE su vari campi del mio db
    es.: 'rossi'
    produce come risultato descrizione='pesci rossi', cognom='rossi'

    fin qui tutto ok....
    vorrei sapere come posso ordinare i risultati in modo che prima mi metta tutti quelli con 'rossi' in descrizione e poi quelli con cognome 'rossi'?

    avevo pensato faccio un rs.exec prima con il LIKE su descrizione
    poi, cambiando sql, faccio l'RS con LIKE su cognome...
    ecco il mio dubbio... (prima di applicarlo, non posso provare in locale) se faccio due RS il primo RS viene sovrascritto dal secondo RS o si accodano (se si accodassero funzionerebbe)!!???

    grazie
    Giacomo

  2. #2
    codice:
    sql = "SELECT * FROM tabella WHERE descrizione LIKE '%rossi%' OR cognome LIKE '%rossi%' ORDER BY descrizione, cognome"
    x

  3. #3
    ... no cosi li mette prima in ordine di descrizione e poi per la stessa descrizione in ordine di cognome
    ....

  4. #4
    Utente di HTML.it L'avatar di kluster
    Registrato dal
    Jul 2003
    Messaggi
    1,288
    cosi' le mette nell'ordine in cui l'hai chiesto:

    vorrei sapere come posso ordinare i risultati in modo che prima mi metta tutti quelli con 'rossi' in descrizione e poi quelli con cognome 'rossi'?
    codice:
    sql = "SELECT * FROM tabella WHERE descrizione LIKE '%rossi%' OR cognome LIKE '%rossi%' ORDER BY descrizione, cognome"
    descrizione like '%rossi%' prima richiesta
    cognome like '%rossi%', seconda richiesta

    ORDER BY descrizione, cognome
    giusto ordine
    se proprio vuoi essere pignolo allora sostituisci

    OR cognome = 'rossi'

  5. #5
    ma in questo modo non mi mette prima i record che hanno una corrispondenza trovata in descrizione
    - pesci rossi
    - gatti rossi e neri

    e poi quelli che hanno una corrispondenza trovata in cognome
    = antonio rossi
    = mario rossi

    come dite voi mi mette (se ne trovasse più di uno e se esistessero record con desacrizione e cognome entrambi contenenti rossi)
    gatti rossi e neri - antonio rossi
    gatti rossi e neri - mario rossi
    pesci rossi - antonio rossi
    pesci rossi - mario rossi
    cioè ordina prima per descrizione e poi per cognome all'interno di descrizioni uguali.

    *** ditemi se sbaglio *** ma non credo ***

  6. #6
    no non sbagli, per quello che ti hanno detto loro deve fare proprio così il programma


    secondo me, se vuoi ordinare prima i risultati in DESCRIZIONE e poi quelli in cognome, devi fare due ricerche. La prima cercando ROSSI soltanto in descrizione, e la stampi, e poi la seconda cercando solo in cognome, e poi la stampi.

    in questo modo li avresti ordinati prima per descrizione e poi per cognome

  7. #7
    invece di due ricerche distinte, usa UNION

  8. #8
    Come lo si usa??



    anche perchè i risultati vengono impaginati, facendo due ricerche mi sballa tutto!!

    ("Select * from tabella where descrizione like rossi union Select * from tabella where cognome like rossi")

    ma la tabella è una soltanto!!!

    funzionerebbe???

  9. #9
    provato non funziona!!!

  10. #10
    Utente di HTML.it L'avatar di kluster
    Registrato dal
    Jul 2003
    Messaggi
    1,288
    per fare una union devi avere lo stesso tipo di campi in modo che il recordset tabellare che ne risulta sia omogeneo.
    Es. una tabella ha 2 campi, l'altra 3.errore
    una ha id numerico, testo e memo l'altra numerico numerico testo.errore

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.