SELECT distinct title, tipo, autor, folder, id_artigo FROM temp WHERE autor like CONCAT("%",varbusca,"%") OR palavra like CONCAT("%",varbusca,"%") OR resumo like CONCAT("%",varbusca,"%") OR title like CONCAT("%",varbusca,"%") ;
END $$
DELIMITER ;
ele só me traz o select, quando o id_artigo da tabela busca for = id_artigo da tabela busca.
até ai tudo bem...
mas estou precisando buscar também quem não tem id_artigo na tabela busca
por exemplo se eu procurar "pedro", não obtenho resultado algum
alguém pode me ajudar para mesmo que o id_artigo não esteja na tabela tb_busca.. ele adicionar na tabela temporaria.
pensei em criar outra tabela temporaria dentro da procedure só buscando esses elementos..
mas decedir perguntar aqui , para ver se tem algo mas certo de se fazer isso
Pergunta
thiagojpa
Fala galera estou precisando de uma ajuda.
tenho duvida em como fazer uma query
minha estrutura esta assim
tb_artigo
id_artigo | title | autor
1 |titulo qualquer 1| thiago
2 |titulo qualquer 2| gilberto
3 |titulo qualquer 3| paulo
4 |titulo qualquer 4| pedro
tb_busca
id_palavra | id_artigo | palavra
1 | 1 | segurança
2 | 1 | segurança
3 | 2 | segurança
4 | 2 | segurança
5 | 3 | segurança
6 | 3 | segurança
quando faço essa procedure
DELIMITER $$
DROP PROCEDURE IF EXISTS `Sp_Exb_pesquisa` $$
CREATE DEFINER=`root`@`localhost` PROCEDURE `Sp_Exb_pesquisa`(IN varbusca varchar (100))
BEGIN
DROP TABLE IF EXISTS temp;
CREATE TEMPORARY TABLE temp (title LONGTEXT, autor VARCHAR(255), resumo LONGTEXT, palavra varchar(255), tipo varchar(15), id_artigo int(10), folder varchar(255) );
INSERT INTO temp
SELECT DISTINCT title, autor, resumo, palavra, tipo, art.id_artigo,folder
FROM tb_artigo as art, tb_busca as bus
WHERE art.id_artigo = bus.id_artigo;
SELECT distinct title, tipo, autor, folder, id_artigo FROM temp WHERE autor like CONCAT("%",varbusca,"%") OR palavra like CONCAT("%",varbusca,"%") OR resumo like CONCAT("%",varbusca,"%") OR title like CONCAT("%",varbusca,"%") ;
END $$
DELIMITER ;
ele só me traz o select, quando o id_artigo da tabela busca for = id_artigo da tabela busca.
até ai tudo bem...
mas estou precisando buscar também quem não tem id_artigo na tabela busca
por exemplo se eu procurar "pedro", não obtenho resultado algum
alguém pode me ajudar para mesmo que o id_artigo não esteja na tabela tb_busca.. ele adicionar na tabela temporaria.
pensei em criar outra tabela temporaria dentro da procedure só buscando esses elementos..
mas decedir perguntar aqui , para ver se tem algo mas certo de se fazer isso
abraço
Link para o comentário
Compartilhar em outros sites
2 respostass a esta questão
Posts Recomendados