Nícolas 4 Denunciar post Postado Agosto 5, 2008 E aee pessoal, Seguinte, eu tenho uma tabela com uma lista de cursos com seus ids, exemplo. 1 - Arquitetura e Urbanismo 2 - Artes Visuais ..... ..... ..... 11 - Design gráfico 12 - Publicidade & Propaganda Esse sistema é possivel cadastrar vaga para até 3 cursos. Dai ele é salvo eles da seguinte forma no banco utilizando um unico campo com o nome de vg_curso. 1 | 5 2 | 1 | 10 11 1 12 | 11 | 1 O problema é se utilizo o like para buscar os dados quando eu passo o id na GET se eu chamo o ID 1 para ele trazer vagas cadastradas somento com o curso que tem o id 1 ele traz tb o 11, 12, 13, 14.... se chamo o 2 ele tras o 12, 20, 21, 22 e etc... Acredito que para essa consulta eu deveria utiliza REGEXP / RLIKE. Mas eu não manjo nada de Expressão Regular, alguém ae da uma força por favor. Flw aee Compartilhar este post Link para o post Compartilhar em outros sites
cassitos 2 Denunciar post Postado Agosto 5, 2008 hummm... veja se o FIND_IN_SET lhe ajudaria neste caso. eis a documentação do dito cujo: http://dev.mysql.com/doc/refman/5.0/en/str...ion_find-in-set ex: SELECT * FROM vagas WHERE FIND_IN_SET('1',REPLACE(REPLACE(vg_curso,' ',''),'|',',')) > 0como esta função trabalha com os valores separados por vígulas e de preferência que não tenham espaços em branco, utilizei este REPLACE retirando os espaços e trocando o | por , Só que esta função só procura por um valor apenas, ou seja, utilizando esta função não daria para procurar por 1 e 2 ao mesmo tempo. Compartilhar este post Link para o post Compartilhar em outros sites
Nícolas 4 Denunciar post Postado Agosto 5, 2008 Aeeee Cassitos... brigadão... funcionou direitinho aqui ^^ Eu até cheguei a pensar em fazer isso, quase fiz, mas achei que o FIND_IN_SET fosse somente para campo SET ae nem arrisquei, mas poo.. vlw mesmo, funcionou direitinho =) Compartilhar este post Link para o post Compartilhar em outros sites