Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Boa Tarde Amigos....
Como posso obter o seguinte resultado.
Em um campo de minha tabela tenho gravado o nome exemplo-seguencialnumerico e as vezes está gravado assim exemplo-teste-seguencialnumerico,
eu queria pegar no select somente os que não tivesse o nome teste, como posso fazer isso?
Por like fica muito pesado, mais tem como você mim dar um exemplo de REGEXP, obg Bruno.
hum... preciso lembrar ER...
SELECT id, campo_estranho FROM tabela_mal_modelada WHERE campo_estranho REGEXP '([a-z0-9]+)-(teste)-([a-z0-9]+)$'estrutura da tabela:
--
-- Estrutura da tabela tabela_mal_modelada
--
CREATE TABLE IF NOT EXISTS `tabela_mal_modelada` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`campo_estranho` varchar(100) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=6 ;
--
-- Extraindo dados da tabela tabela_mal_modelada
--
INSERT INTO tabela_mal_modelada (id, campo_estranho) VALUES
(1, 'exemplo-teste-001'),
(2, 'exemplo-teste-002'),
(3, 'exemplo-wb-003'),
(4, 'exemplo-wb-004'),
(5, 'exemplo-teste-005');
Valeu Bruno vou tentar aqui.
Amigo teria como eu pegar do texto exemplo-teste-001 pegar só o numeral e mim retorna somente ele?
ixi... falando assim..
só pensei em 2 coisas.. ou você faz o SELECT por REGEXP ou NOT LIKE