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">&lt;<a href="mailto:blabos@gmail.com">blabos@gmail.com</a>&gt;</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 &quot;sujas&quot;.<br>
<br>
Existem rand(1..infinito) formas de se digitar &quot;foo&quot; errado. E eu<br>
&quot;agarantiu&quot;, 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 &lt;<a href="mailto:renato.cron@gmail.com">renato.cron@gmail.com</a>&gt;:<br>
<div><div></div><div class="h5">&gt; Luiz,<br>
&gt;<br>
&gt; o metodo do Blabos é um automatizado.<br>
&gt; No caso do Diego,<br>
&gt; parece que muitos &quot;alguéns&quot; (rs) já digitaram o que é o correto e o de<br>
&gt; determinado errado.<br>
&gt;<br>
&gt; Eu não entendi direito a duvida, mas eu faria, não que seja o mais rapido,<br>
&gt; um INNER JOIN entre a palavra do usuario e a da tabela.<br>
&gt;<br>
&gt; Por exemplo, nao sei como são suas tabelas:<br>
&gt;<br>
&gt; SELECT a.id_usuario, b.limpo<br>
&gt; FROM tabela_usuarios_porcos a<br>
&gt; INNER JOIN tabela_de_para_porco_decente b ON (a.palavra_suja = b.suja)<br>
&gt; WHERE a.id_usuario = Y;<br>
&gt;<br>
&gt; Claro, que no mundo real, você irá querer saber quais são as palavras que<br>
&gt; não estão no banco, então poderia alterar para:<br>
&gt;<br>
&gt; SELECT a.id_usuario, a.palavra_suja, b.limpo<br>
&gt; FROM tabela_usuarios_porcos a<br>
&gt; LEFT JOIN tabela_de_para_porco_decente b ON (a.palavra_suja = b.suja)<br>
&gt; WHERE a.id_usuario = Y;<br>
&gt;<br>
&gt; Assim, alguns registros estarão com o campo &quot;limpo&quot; em nulos.<br>
&gt;<br>
&gt; Mas, se for mesmo isso que você precise, eu faria assim:<br>
&gt; UPDATE tabela_usuarios_porcos<br>
&gt; SET limpo = _limpo<br>
&gt; FROM (<br>
&gt;  SELECT a.id_usuario as _id_usuario, b.limpo as _limpo<br>
&gt;  FROM tabela_usuarios_porcos a<br>
&gt;  INNER JOIN tabela_de_para_porco_decente b ON (a.palavra_suja = b.suja)<br>
&gt;  WHERE a.id_usuario IN (lots..)<br>
&gt; ) up<br>
&gt; WHERE id_usuario = _id_usuario<br>
&gt;<br>
&gt; E depois um select com quem ficou com limpo &quot;null&quot;<br>
&gt;<br>
&gt; SELECT a.id_usuario, a.palavra_suja<br>
&gt; FROM tabela_usuarios_porcos a<br>
&gt; WHERE a.id_usuario IN (same lots..)<br>
&gt; AND a.limpo IS NULL<br>
&gt;<br>
&gt;<br>
&gt; Wherever,<br>
&gt;<br>
&gt; bye bye!<br>
&gt;<br>
&gt; 2010/11/12 Luis Motta Campos &lt;<a href="mailto:luismottacampos@yahoo.co.uk">luismottacampos@yahoo.co.uk</a>&gt;<br>
&gt;&gt;<br>
&gt;&gt; On 11/11/2010 07:01 PM, Blabos de Blebe wrote:<br>
&gt;&gt; &gt; Vê se isso aqui tem alguma coisa a ver:<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; <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>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; Não vou poder falar muito agora (timeout) mas vê se não dá pra aplicar<br>
&gt;&gt; &gt; o mesmo princípio.<br>
&gt;&gt;<br>
&gt;&gt; O Blabos está certo e o processo que ele montou é o melhor que se pode<br>
&gt;&gt; ter.<br>
&gt;&gt;<br>
&gt;&gt; Putamplexos<br>
&gt;&gt; --<br>
&gt;&gt; Luis Motta Campos is a DBA,<br>
&gt;&gt; Perl Programmer, foodie and photographer.<br>
&gt;&gt; _______________________________________________<br>
&gt;&gt; SaoPaulo-pm mailing list<br>
&gt;&gt; <a href="mailto:SaoPaulo-pm@pm.org">SaoPaulo-pm@pm.org</a><br>
&gt;&gt; <a href="http://mail.pm.org/mailman/listinfo/saopaulo-pm" target="_blank">http://mail.pm.org/mailman/listinfo/saopaulo-pm</a><br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt; --<br>
&gt; Renato Santos<br>
&gt; <a href="http://www.renatocron.com/blog/" target="_blank">http://www.renatocron.com/blog/</a><br>
&gt;<br>
&gt; _______________________________________________<br>
&gt; SaoPaulo-pm mailing list<br>
&gt; <a href="mailto:SaoPaulo-pm@pm.org">SaoPaulo-pm@pm.org</a><br>
&gt; <a href="http://mail.pm.org/mailman/listinfo/saopaulo-pm" target="_blank">http://mail.pm.org/mailman/listinfo/saopaulo-pm</a><br>
&gt;<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>