我试图围绕 Postgres 如何将数字表示为二进制。如何将固定长度的数字格式化为一串一和零?例子:
select fmt((1<<0)::int2); -- something like 0000 0000 0000 0001
select fmt((1<<2)::int2); -- something like 0000 0000 0000 0100
编辑:我正在研究 postgres 14。
我试图围绕 Postgres 如何将数字表示为二进制。如何将固定长度的数字格式化为一串一和零?例子:
select fmt((1<<0)::int2); -- something like 0000 0000 0000 0001
select fmt((1<<2)::int2); -- something like 0000 0000 0000 0100
编辑:我正在研究 postgres 14。
我开始了一份新工作,它涉及查看一堆大数字。有没有一种简单的方法可以将逗号添加到int
ordecimal
字段以使其可读?
例如,SQL Server 输出左侧的列,但为了我自己的理智,我需要它看起来像右侧的列:
2036150 -> 2,036,150
...或者我必须写一些令人发指的
left(right(vandalized_data),6),3) + ',' + right(left(vandalized_data),6),3)
功能?
完美的东西是显示网格中的逗号,然后是输出中的纯整数。
我有一个带有“代码”列的表,定义为varchar
. 但是,如果您在某些记录中只有数字,对于此字段,并且您在我们的应用程序中搜索这些记录,网格 (DevExpress) 中的结果将被格式化为数字。
当您在包含 的结果中有记录时,a-z
格式化就不会发生。所以我想看看我是否可以从数据库端解决这个问题。我在表上创建了一个视图,并将有问题的列更改为:
:
Code + CHAR(144) AS Code
:
这解决了网格中字段的格式。该字段现在将始终被视为字符串,即使结果仅包含数字也是如此。
然而,问题是,如果我现在在应用程序的前端明确搜索此值,例如Code = 40E
,由于特殊字符(不可见),我没有得到任何结果。所以我只是部分解决了这个问题。一开始我尝试只在该字段中添加一个尾随空格,但这没有用。
如果可能的话,有什么想法可以从数据库中解决这个问题吗?
我只能访问 SQL 对象,因此我试图通过 SQL 解决这个问题。有没有办法在数据库视图中解决这个问题,同时确保没有有趣的字符附加到影响搜索的字段值?
是否可以使用可选分数在 Postgresql 中格式化数字?喜欢:
1.0 -> '1'
1.3 -> '1.3'
我调查了to_char
,但我没有比“1”更进一步。与to_char(1.0, 'FM9D9')
。
有可能吗,怎么办?我正在使用 PostgreSQL 9.5
我正在为NAICS 数据库编写导入机制。我有几个关于这种代码格式的问题。我以前看过它,我喜欢它的设置。我将问一些关于最佳实践和数据导航的其他问题,我想简单地用正确的名称来引用它。
本质上这是数据的一个例子
CODE, TITLE
"21","Mining, Quarrying, and Oil and Gas Extraction"
"212","Mining (except Oil and Gas)"
"2121","Coal Mining"
"21211","Coal Mining"
"212111","Bituminous Coal and Lignite Surface Mining "
"212112","Bituminous Coal Underground Mining "
因此,如果Bituminous Coal Underground Mining是您的组织类型,您的代码将是212112
. 您可能会发现自己从事的业务类型是煤炭开采,然后再次查找发现您从事的是采矿业务(石油和天然气除外),然后再次查找发现您从事的业务是“采矿,采石、石油和天然气开采”。
这样的方案叫什么,是否有一个术语来指代这种数据组织?
我想调用recursive-base10或recursive-decimal之类的东西,但它有名字吗?