Visualizzazione risultati 1 fino 5 di 5

Discussione: Interrogazione concatenata

  1. #1
    Guest

    Predefinito Interrogazione concatenata

    Ciao a tutti!
    Ho una tabella con prefissi e numeri telefonici del tipo

    n|m
    1|2
    4|5

    Questa è la query:
    select *
    from number
    where n like '%$q%' or m like '%$q%

    ($q è la variabile che uso per la ricerca)

    Al momento quando digito il numero completo "12" non mi da nessun risultato, mentre se digito solo "1" o "2" come giusto che sia mi mostra il risultato.
    Sento che la soluzione è molto vicina ma forse così banale da ignorarla..

  2. #2
    Guest

    Predefinito

    Hai provato così?

    1!2 && 12

  3. #3
    Guest

    Predefinito

    Ti riferisci al fatto di provare con l'and? Gia provato ma visto che i due campi possono avere numeri diversi mi da in output il nulla.
    Io cercavo di modificare il where, in termini puramente logici così:

    n&m = $q

    con la & commerciale avente funzione di concatenamento( rimasugli di visual basic, ndr).
    Non so come tradurlo in sql

  4. #4
    Guest

    Predefinito

    Devi usare un concatenamento sulle colonne per ottenere ciò che vuoi.

    Codice PHP:
    SELECT *
    FROM number
    WHERE n LIKE
    '%$q%'
    OR m LIKE '%$q%'
    OR concat( n, m ) LIKE '%$q%'
    Sennò lui le analizza prima una e poi l'altra, eseguendo 2 ricerche diverse e non capisce che deve fare anche una ricerca unoca cercando nelle due colonne considerando come se fosse 1 sola.
    Ultima modifica di pxy : 07-04-2015 alle ore 09.20.07

  5. #5
    Guest

    Predefinito

    Citazione Originalmente inviato da pxy Visualizza messaggio
    Devi usare un concatenamento sulle colonne per ottenere ciò che vuoi.

    Codice PHP:
    SELECT *
    FROM number
    WHERE n LIKE
    '%$q%'
    OR m LIKE '%$q%'
    OR concat( n, m ) LIKE '%$q%'
    Sennò lui le analizza prima una e poi l'altra, eseguendo 2 ricerche diverse e non capisce che deve fare anche una ricerca unoca cercando nelle due colonne considerando come se fosse 1 sola.
    Grazie mille!

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •