spy*_*3rr 102 postgresql postgresql-9.1
如何将整数转换为字符串作为PostgreSQL查询的一部分?
所以,例如,我需要:
SELECT * FROM table WHERE <some integer> = 'string of numbers'
Run Code Online (Sandbox Code Playgroud)
哪里<some integer>可以是1到15位数的长度.
Bru*_*olo 109
您可以通过这种方式将整数转换为字符串
intval::text
Run Code Online (Sandbox Code Playgroud)
在你的情况下
SELECT * FROM table WHERE <some integer>::text = 'string of numbers'
Run Code Online (Sandbox Code Playgroud)
Boh*_*ian 102
因为数字最多可以是15位,所以您需要转换为64位(8字节)整数.试试这个:
SELECT * FROM table
WHERE myint = mytext::int8
Run Code Online (Sandbox Code Playgroud)
该::转换运算符是历史的,但方便.Postgres也符合SQL标准语法
myint = cast ( mytext as int8)
Run Code Online (Sandbox Code Playgroud)
Oma*_*osa 10
如果某个可以存储为字符串的整数包含小数点,并且您想要比较小数点与小数点,下面会有所帮助
select NULLIF('105.0', '')::decimal
SELECT * FROM table WHERE NULLIF('105.0', '')::decimal = 105.0
Run Code Online (Sandbox Code Playgroud)
下面不会转换
select NULLIF('105.0', '')::int
select NULLIF('105.0', '')::integer
Run Code Online (Sandbox Code Playgroud)
对于这个问题你只需通过
select 105.3::text
Run Code Online (Sandbox Code Playgroud)
小智 5
您可以这样做:
SELECT * FROM table WHERE cast(YOUR_INTEGER_VALUE as varchar) = 'string of numbers'
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
177311 次 |
| 最近记录: |