Visualizzazione dei risultati da 1 a 8 su 8
  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2001
    Messaggi
    170

    Dividere valori di un campo

    Ciao a tutti,
    come da titolo volevo sapere se esiste una quary che mi possa suddividere i valori estratti da un campo, separati per esempio da una virgola, cercando in questo campo un determinato valore.
    Facendo un esempio una tabella è struttura come segue

    ----------------------
    ID | NUMERI |
    ----------------------
    1 | 1,2,3,4,5,6
    ----------------------
    2 | 1,4,10,70
    ----------------------
    3 | 6,13,18
    ----------------------

    C'è un modo per vedere se id 2 hail 13 nel campo numeri?

    E se esiste un modo, è meglio farlo durante la query oppure è meglio estrarre tutti i valori e poi dividerli e "cercare" con un linguaggio lato server?

  2. #2
    potresti usare LIKE, ma troveresti anche 130 o 213.

    meglio usare un linguaggio di programmazione. php o asp ad esempio
    Ciao!

  3. #3
    Originariamente inviato da fmortara
    potresti usare LIKE, ma troveresti anche 130 o 213.

    meglio usare un linguaggio di programmazione. php o asp ad esempio

    se per esempio cerca 13 puo fare like '%,13,%'
    http://www.anobii.com/isalreadyinuse

  4. #4
    Utente di HTML.it
    Registrato dal
    Feb 2001
    Messaggi
    170

    si effettivamente sarebbe un problema.. grazie comunque

  5. #5
    Originariamente inviato da isAlreadyInUse
    se per esempio cerca 13 puo fare like '%,13,%'


    13,14,15,16,52,89,130,156,213,313
    11,14,15,16,52,89,130,156,213,313
    12,14,15,16,52,89,156,175,213,313

    trovami 13 qui!



    L'unica soluzione sarebbe di mettere la virgola anche prima e dopo la serie di numeri
    ,11,14,15,16,52,89,130,156,213,313,
    Ciao!

  6. #6
    1. dipende dal db (che non hai specificato, come il regolamento vorrebbe)
    2. potresti fare where ','+colonna+',' = ','+valore+','

  7. #7
    Utente di HTML.it
    Registrato dal
    Feb 2001
    Messaggi
    170
    Il db è mysql sorry ma ora le impostazioni del forum non mi fanno modificare il primo post.
    Mi era venuto in mente se esiste un similare di explode di php per mysql, ancora non ho cercato sto inzianzo ora, ma se qualcuno sa se si può fare o meno....

  8. #8
    Utente di HTML.it L'avatar di Enoa
    Registrato dal
    Jul 2005
    Messaggi
    573
    Così?
    codice:
    WHERE 
        campo LIKE '13,%' OR #inizio stringa
        campo LIKE '%,13,%' OR #posizione non pervenuta
        campo LIKE '%,13' #fine stringa
    cioè, se deve essere il numero 13, non che lo debba trovare come substringa di 130, 313 etc.

    Ma quei valori cosa rappresentano?

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.