我在postgresql中有一个衣服尺寸列,其中包含(24,25,“S”,“M”,“ONESIZE”,“XL”)等值。Postgresql varchar to int
我需要从中只提取整数值并将结果转换为int。 我试图以下面的格式编号,如果该行包含一个数字,那么该函数会起作用,但如果它只包含字母则不起作用。
select to_number('aq1', '99999D9') -> 1
select to_number('23', '99999D9') -> 23
select to_number('ONESIZE', '99999D9') -> error
我需要一个函数,它的工作方式可以让我在varchar列上加入一个int列。
select ???func("XL") -> null/0
select ???func(23) -> 23
任何帮助,将不胜感激
如果你需要在int上加入varchar(这很糟糕,请尽量避免这种情况),为什么不把int转换为varchar,然后再加入呢? –
好点,但我确实需要以后使用这些数字,我需要一个我们都可以学习的通用解决方案。通过你的方法一个通用的解决方案是在varchar和int中有一个数字表,然后通过它连接。 – AdrianBR
数据源是第三方,不可避免的 – AdrianBR