camurso_ Posted October 17, 2019 Share Posted October 17, 2019 Fdx, está-se-me a dar uma branca. suponhamos que tenho uma coluna (col1) que guarda varchar (string). Suponhamos que guarda isto: CENAS, AZUL, BANANAS, COISAS Quero fazer um select para saber se na col1 tem BANANAS. Só com um like é que lá chego? 1 Link to comment Share on other sites More sharing options...
Tourniquet Posted October 17, 2019 Share Posted October 17, 2019 Por norma também uso like. Acho que podes fazer algo parecido com: Select ... Where CONTAINS(col1, "BANANAS") Link to comment Share on other sites More sharing options...
Mini0n Posted October 17, 2019 Share Posted October 17, 2019 Also, tenta assim: WHERE col1 LIKE '%BANANAS%' 1 Link to comment Share on other sites More sharing options...
skaazi Posted October 17, 2019 Share Posted October 17, 2019 Toma la o like entao para ver se ajuda. 2 Link to comment Share on other sites More sharing options...
camurso_ Posted October 17, 2019 Author Share Posted October 17, 2019 (col1 IS NULL OR INSTR('BANANAS', col1 ) > 0) Fiz assim. Quero procurar para os casos em que col1 tem bananas ou está vazio, Isto é para um sistema de permissões. Ou o utilizador é god (restrições (col1) vazias) ou só pode executar se na restrição estiver dentro das que é enviada por parâmetro. Claro que podia meter uma linha por utilizador, por restrição. Era o que o modelo normalizado sugere, mas assim a tabela fica mais pequena e fácil de gerir... Link to comment Share on other sites More sharing options...
Perks Posted October 17, 2019 Share Posted October 17, 2019 Se queres encontrar bananas pede ajuda ao @Kinas_ 3 Link to comment Share on other sites More sharing options...
Kinas_ Posted October 17, 2019 Share Posted October 17, 2019 Sim. Eu tenho uma. Já se quiseres encontrar uma crica fala com o @Perks Link to comment Share on other sites More sharing options...
HERiTAGE Posted October 17, 2019 Share Posted October 17, 2019 1 1 Link to comment Share on other sites More sharing options...
camurso_ Posted October 17, 2019 Author Share Posted October 17, 2019 Vocês importam-se de parar com essa brincadeira parva e sem graça nenhuma? É que, honestamente, já mete nojo... Já deviam ser homenzinhos... É que, depois, tenho que levar com os desabafos das vossas mulheres sobre vocês e já não tenho paciência para as aturar... 1 Link to comment Share on other sites More sharing options...
nephrops Posted October 17, 2019 Share Posted October 17, 2019 Talvez assim? select * from database_name where col1 = 'BANANAS' ou select * from database_name where col1 not in ( 'CENAS' , 'AZUL' , 'COISAS') Link to comment Share on other sites More sharing options...
Mini0n Posted October 17, 2019 Share Posted October 17, 2019 @nephrops a cena é que a col1 tem, se bem percebi, "BANANAS,AZUL,COISAS". @camurso_ isso normalizado, IMO, fica sempre mais fácil de gerir. O próximo que vier vai saber como fazer, sem ter de se por a "inventar", por exemplo. Link to comment Share on other sites More sharing options...
camurso_ Posted October 17, 2019 Author Share Posted October 17, 2019 2 minutes ago, Mini0n said: @nephrops a cena é que a col1 tem, se bem percebi, "BANANAS,AZUL,COISAS". @camurso_ isso normalizado, IMO, fica sempre mais fácil de gerir. O próximo que vier vai saber como fazer, sem ter de se por a "inventar", por exemplo. Eu também concordo, mas manda quem pode.... Ainda estou indeciso entre o like e o instr... É que o like dá resultados muito ambíguos (ora demora 2 minutos, ora demora meros 4 segundos), depende da máscara... O instr, ao menos, é coerente... Link to comment Share on other sites More sharing options...
Mini0n Posted October 17, 2019 Share Posted October 17, 2019 Pensei que tivesses poder de decisão ou que tivesses sido tu a fazer assim. O like penso que para tabelas muito grandes ou strings muito grandes seja lento. Lá está, outra vantagem de ter isso normalizado... Já agora, é que SQL? MySQL, SQLSERVER? Is there a fast way to do a '%phrase%' search in any DB? STACKOVERFLOW.COM I have a large dataset with 5M rows. One of the fields in the dataset is 'article_title', which I'd like to search in real-time for an autocomplete feature that I'm building on my site. I've been Vê se com o match (que desconhecia) melhoras isso. Mas vê se podes por o index. Link to comment Share on other sites More sharing options...
camurso_ Posted October 17, 2019 Author Share Posted October 17, 2019 Não me vou adiantar muito nesse tema, apesar de teres razão... Mas faltam-me duas semanas e meia para ir embora daqui... 1 Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now