【发布时间】:2018-01-08 06:36:13
【问题描述】:
我需要连接两个表 table1 和 table2 其中 table1.id = table2.id 但 table1.id 是一个整数,而 table2.id 是一个字符串。
【问题讨论】:
-
只是将 int 转换为字符串?.. 它当然不会执行,但是对于这样的任务,我认为你不能做任何正确的事情 - 对吧?
我需要连接两个表 table1 和 table2 其中 table1.id = table2.id 但 table1.id 是一个整数,而 table2.id 是一个字符串。
【问题讨论】:
试试
select * from a join b on a.id = nullif(b.id, '')::int
【讨论】:
在比较之前,您需要将 table2.id 转换为整数。 (https://www.postgresql.org/message-id/371F1510.F86C876B@sferacarta.com)
select * from table1,table2 where table1.id = cast(table2.id as int)
【讨论】: