Pessoal, genial, blabos curti muito o post, e estou investigando mais pois provavelmente utilizarei isso em no futuro em outro projeto, <br>a questão é que a base no final é um .xls/txt/csv geralmente vem de um arquivo, eu percebi lendo as sugestões que estava tentando viajar muito quando aparentemente um simples SELECT IN(..) já daria conta <br>
(KISS).. <br><br>Mas sem dúvida gostei muito da ajuda, valeu pessoal!<br><br>Abraços,<br>Diego Piccolo..<br><br><div class="gmail_quote">2010/11/12 Blabos de Blebe <span dir="ltr"><<a href="mailto:blabos@gmail.com">blabos@gmail.com</a>></span><br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">Se eu entendi bem, existe uma base com palavras "sujas".<br>
<br>
Existem rand(1..infinito) formas de se digitar "foo" errado. E eu<br>
"agarantiu", vc não vai conseguir criar um par chave-valor para cada<br>
forma errada. Pelo menos não num tempo computacionalmente razoável.<br>
<br>
Pegue a palavra errada, compare com um dicionário e limpe a base de<br>
dados. Aliás, faça a comparação e ache a palavra certa *antes* de ela<br>
ir parar no banco, se possível.<br>
<br>
Mas eu posso ter entendido o problema de forma errada.<br>
<br>
Abraços<br>
<br>
2010/11/12 Renato Santos <<a href="mailto:renato.cron@gmail.com">renato.cron@gmail.com</a>>:<br>
<div><div></div><div class="h5">> Luiz,<br>
><br>
> o metodo do Blabos é um automatizado.<br>
> No caso do Diego,<br>
> parece que muitos "alguéns" (rs) já digitaram o que é o correto e o de<br>
> determinado errado.<br>
><br>
> Eu não entendi direito a duvida, mas eu faria, não que seja o mais rapido,<br>
> um INNER JOIN entre a palavra do usuario e a da tabela.<br>
><br>
> Por exemplo, nao sei como são suas tabelas:<br>
><br>
> SELECT a.id_usuario, b.limpo<br>
> FROM tabela_usuarios_porcos a<br>
> INNER JOIN tabela_de_para_porco_decente b ON (a.palavra_suja = b.suja)<br>
> WHERE a.id_usuario = Y;<br>
><br>
> Claro, que no mundo real, você irá querer saber quais são as palavras que<br>
> não estão no banco, então poderia alterar para:<br>
><br>
> SELECT a.id_usuario, a.palavra_suja, b.limpo<br>
> FROM tabela_usuarios_porcos a<br>
> LEFT JOIN tabela_de_para_porco_decente b ON (a.palavra_suja = b.suja)<br>
> WHERE a.id_usuario = Y;<br>
><br>
> Assim, alguns registros estarão com o campo "limpo" em nulos.<br>
><br>
> Mas, se for mesmo isso que você precise, eu faria assim:<br>
> UPDATE tabela_usuarios_porcos<br>
> SET limpo = _limpo<br>
> FROM (<br>
> SELECT a.id_usuario as _id_usuario, b.limpo as _limpo<br>
> FROM tabela_usuarios_porcos a<br>
> INNER JOIN tabela_de_para_porco_decente b ON (a.palavra_suja = b.suja)<br>
> WHERE a.id_usuario IN (lots..)<br>
> ) up<br>
> WHERE id_usuario = _id_usuario<br>
><br>
> E depois um select com quem ficou com limpo "null"<br>
><br>
> SELECT a.id_usuario, a.palavra_suja<br>
> FROM tabela_usuarios_porcos a<br>
> WHERE a.id_usuario IN (same lots..)<br>
> AND a.limpo IS NULL<br>
><br>
><br>
> Wherever,<br>
><br>
> bye bye!<br>
><br>
> 2010/11/12 Luis Motta Campos <<a href="mailto:luismottacampos@yahoo.co.uk">luismottacampos@yahoo.co.uk</a>><br>
>><br>
>> On 11/11/2010 07:01 PM, Blabos de Blebe wrote:<br>
>> > Vê se isso aqui tem alguma coisa a ver:<br>
>> ><br>
>> > <a href="http://blog.blabos.org/2008/12/faxina-depois-da-festa/" target="_blank">http://blog.blabos.org/2008/12/faxina-depois-da-festa/</a><br>
>> ><br>
>> > Não vou poder falar muito agora (timeout) mas vê se não dá pra aplicar<br>
>> > o mesmo princípio.<br>
>><br>
>> O Blabos está certo e o processo que ele montou é o melhor que se pode<br>
>> ter.<br>
>><br>
>> Putamplexos<br>
>> --<br>
>> Luis Motta Campos is a DBA,<br>
>> Perl Programmer, foodie and photographer.<br>
>> _______________________________________________<br>
>> SaoPaulo-pm mailing list<br>
>> <a href="mailto:SaoPaulo-pm@pm.org">SaoPaulo-pm@pm.org</a><br>
>> <a href="http://mail.pm.org/mailman/listinfo/saopaulo-pm" target="_blank">http://mail.pm.org/mailman/listinfo/saopaulo-pm</a><br>
><br>
><br>
><br>
> --<br>
> Renato Santos<br>
> <a href="http://www.renatocron.com/blog/" target="_blank">http://www.renatocron.com/blog/</a><br>
><br>
> _______________________________________________<br>
> SaoPaulo-pm mailing list<br>
> <a href="mailto:SaoPaulo-pm@pm.org">SaoPaulo-pm@pm.org</a><br>
> <a href="http://mail.pm.org/mailman/listinfo/saopaulo-pm" target="_blank">http://mail.pm.org/mailman/listinfo/saopaulo-pm</a><br>
><br>
_______________________________________________<br>
SaoPaulo-pm mailing list<br>
<a href="mailto:SaoPaulo-pm@pm.org">SaoPaulo-pm@pm.org</a><br>
<a href="http://mail.pm.org/mailman/listinfo/saopaulo-pm" target="_blank">http://mail.pm.org/mailman/listinfo/saopaulo-pm</a><br>
</div></div></blockquote></div><br>