psycopg2 Python在字段postgresql中连接百分比'%'

时间:2017-06-30 13:11:30

标签: python postgresql psycopg2

这是一个非常具体的问题,但我正在运行Python的自动脚本,它使用psycopg2运行Postgresql查询。其中一个字段返回百分比,但我想显示在每个数字后添加百分比,而不是将它们显示为整数。例如,我在查询中有这一行:

CASE WHEN (delivered_orders != 0) then round((scanned_deliveries::numeric 
/ delivered_orders::numeric)*100) when delivered_orders = 0  then 0 end as 
scan_percent

因此,如果有4个订单且3个被扫描,它将返回75.我希望它返回75%。我试过用||连接它'%'和||在“结束”之后的%,但是Python将百分比视为占位符,并且它表示元组超出范围,因为我没有足够的值。我也尝试过将它作为占位符使用,然后在执行cursor.execute(查询,('%'))时放'%',但它说:

ValueError:不支持的格式字符

我也尝试过其他一些东西。我在这里碰到我的头撞墙,认为聪明的人可能知道我需要做什么。谢谢你的帮助!

1 个答案:

答案 0 :(得分:4)

%%用于文字%。来自Psycopg docs

  

使用参数时,为了在查询中包含文字%   您可以使用%%字符串。