Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12
  1. #1

    Controllare se è in un record è contenuto un valore

    Salve,

    scusate tanto per il titolo non molto riassuntivo del vero problema ma non trovavo altro.

    Comunque, avrei un campo di nome 'children' con dei valori al suo interno separati da una virgola, esempio: 2,3,4,5,6

    In ciò, dovrei fare una query per ottenere i record dove è contenuto il numero '5' (in questo caso, ma potrebbe esser anche 6).

    In PHP, avevo pensato di farlo selezionando i records, fare un explode del valore e controllare l' array generato, ma viene un loop lunghissimo..

    In SQL, pensavo di farlo con LIKE '%,5,%', però se fosse il 6, non potrei mettere la virgola finale.. Avete qualche idea?
    Social Network in costruzione.. Misto tra Twitter e Facebook.. Twitbook o facetter?

  2. #2
    .. WHERE (',' & colonna & ',') LIKE '%,5,%' ...

    that easy!

  3. #3
    colonna = nome della colonna?

    Cioè, la tabella:

    ID | Nome | children
    1 | Boh | 1,2,3,4,5,6

    la query verrebbe:

    SELECT * FROM nometbl WHERE (',' & children & ',') LIKE '%,5,%' ?

    Per il 6 invece, che non ha una virgola successiva, come potrei fare?
    Social Network in costruzione.. Misto tra Twitter e Facebook.. Twitbook o facetter?

  4. #4
    hai provato a mettere il 6 al posto del 5?

    SELECT * FROM nometbl WHERE (',' & children & ',') LIKE '%,6,%' ?

  5. #5
    Sinceramente no, eseguendo la seguente query:

    SELECT * FROM nometabella WHERE (',' & children & ',') LIKE '%,5,%'

    mi restituisce 0 righe, mentre in realtà ne dovrebbe rimandare due (un record è 1,2,3,4,5,6 mentre un altro 5,6)
    Social Network in costruzione.. Misto tra Twitter e Facebook.. Twitbook o facetter?

  6. #6

  7. #7
    Database MySQL, la query l' ho eseguita sia da PHP che da PhpMyAdmin (sempre PHP è.. uhm) e sempre 0 righe
    Social Network in costruzione.. Misto tra Twitter e Facebook.. Twitbook o facetter?

  8. #8
    allora forse devi fare

    SELECT * FROM nometabella WHERE CONCAT(',', children, ',') LIKE '%,5,%'

    oppure

    SELECT * FROM nometabella WHERE FIND_IN_SET('5', children)

  9. #9
    Vanno benissimo entrambe, grazie mille! Ho messo mi piace alla tua pagina Facebook
    Social Network in costruzione.. Misto tra Twitter e Facebook.. Twitbook o facetter?

  10. #10
    lasciami un mi piace, guarda in firma!

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