Search Postgresql Archives

Re: MySQL -> PostgreSQL conversion issue

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, 29 Oct 2010 14:40:51 Tom Lane wrote:
> [ blanch... ]  That's not the worst SQL code I've ever seen, but it
> might be in the top ten.  They're apparently trying to see whether
> tf.dnid, taken as a string, matches a prefix of cdr.dnid --- but what if
> you have say 123 versus "1234foo"?  This will match, but most likely
> it shouldn't.  They need to acquire a clue, and a better data
> representation.

Agreed - it's not very pretty.

> Anyway, you've got two different typing violations there, so you need
> two casts to fix it:
> 
> as tf on tf.dnid::text = substr(cdr.dnid,1,length(tf.dnid::text))

Unfortunately not:
from cc_call cdr left join cc_card cc on cdr.card_id=cc.id left join 
                        (select 'dnid' as dnid, 0.1 as sell_cost,0.1 as cost,0 
as dnid_type union  select 8887798764,0.02,0.06 ,1  
                        ) as tf on 
tf.dnid::text=substr(cdr.dnid,1,length(tf.dnid::text))

still gives

2010-10-29 14:58:09 NZDT ERROR:  invalid input syntax for integer: "dnid"

Thanks

-- 
Regards
Scott Newton
Software Engineer @ Vadacom Limited
Ph: (09) 9690600 x 280

-- 
Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]
  Powered by Linux