Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12
  1. #1
    Utente di HTML.it
    Registrato dal
    Jan 2004
    Messaggi
    170

    Sql: priorità ricerca a un campo

    Ciao, ho realizzato motore di ricerca che cerca le parole in 3 campi, quando stampo a video il risultato della ricerca vorrei che privilegiasse i dati trovati dalla ricerca del primo campo piuttosto che dagli altri e li mettesse prima.

    Avete un'idea?
    I migliori teologi delle principali religioni della terra mettono in rete 10.000 supercomputers, caricati con la base di conoscenza umana e pongono la fatidica domanda:
    - Dio esiste? Il mostro dalle 10.000 teste ci ragiona sopra per 7 giorni e poi risponde: "ORA SI!"

  2. #2
    Utente di HTML.it L'avatar di agenti
    Registrato dal
    Feb 2002
    Messaggi
    2,427
    magari usando "order by tuo_campo " ?

  3. #3
    Utente di HTML.it
    Registrato dal
    Jan 2004
    Messaggi
    170
    Scusa forse mi sono spiegato male.

    Ti faccio un'esempio:

    Ho tre colonne: auto - descrizione auto - categoria auto

    cerco alfa

    trovo alfa spider (dal match della colonna auto)
    trovo alfa giulietta (dal match della colonna descrizione)
    trovo alfa 33 (dal match della colonna categoria)

    ora io voglio che per prima mi venga stampata a video l'alfa 33 perchè voglio privilegiare la ricerca sulla categoria anche se il nome della categoria è alfabeticamente in mezzo tra la categoria dell'alfa spider e quella dell'alfa giuglietta.
    I migliori teologi delle principali religioni della terra mettono in rete 10.000 supercomputers, caricati con la base di conoscenza umana e pongono la fatidica domanda:
    - Dio esiste? Il mostro dalle 10.000 teste ci ragiona sopra per 7 giorni e poi risponde: "ORA SI!"

  4. #4
    Utente di HTML.it L'avatar di agenti
    Registrato dal
    Feb 2002
    Messaggi
    2,427
    forse: order by auto = "alfa 33"

    non ricordo bene.. prova..

  5. #5
    prova così (adattalo)

    codice:
    SELECT * FROM (
       SELECT '1' AS PRIORITA, * FROM tuatabella WHERE AUTO LIKE '%alfa%'
       UNION
       SELECT '2' AS PRIORITA, * FROM tuatabella WHERE DESCRIZIONE LIKE '%alfa%'
       UNION
       SELECT '3' AS PRIORITA, * FROM tuatabella WHERE CATEGORIA LIKE '%alfa%'
    ) ORDER BY PRIORITA

  6. #6
    Utente di HTML.it L'avatar di agenti
    Registrato dal
    Feb 2002
    Messaggi
    2,427
    Santo optime.....
    santo subito...

  7. #7
    Utente di HTML.it
    Registrato dal
    Jan 2004
    Messaggi
    170
    Sei un mago, è perfetto!!!
    Grazie
    I migliori teologi delle principali religioni della terra mettono in rete 10.000 supercomputers, caricati con la base di conoscenza umana e pongono la fatidica domanda:
    - Dio esiste? Il mostro dalle 10.000 teste ci ragiona sopra per 7 giorni e poi risponde: "ORA SI!"

  8. #8

  9. #9
    Utente di HTML.it L'avatar di billy1
    Registrato dal
    Jun 2001
    Messaggi
    549

    info

    a me da un errore!!!

    Microsoft OLE DB Provider for ODBC Drivers error '80040e14'

    [Microsoft][ODBC SQL Server Driver][SQL Server]Sintassi non corretta in prossimità della parola chiave 'ORDER'.

    codice:
    SELECT * FROM ( SELECT '1' AS PRIORITA, * FROM articoli WHERE descrizione_breve like '%sonaglio%' 
    UNION 
    (SELECT '2' AS PRIORITA, * FROM articoli WHERE descrizione_estesa like '%sonaglio%') 
    ) ORDER BY PRIORITA
    Il fumo fa male a te e agli altri.
    Rispettate chi non vuole respirare il fumo passivo.

  10. #10
    sql ha bisogno di un alias di tabella

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 © 2026 vBulletin Solutions, Inc. All rights reserved.