gpt4 book ai didi

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

转载 作者:行者123 更新时间:2023-11-29 12:35:45 25 4
gpt4 key购买 nike

这是一个非常具体的问题,但我正在通过 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 将百分比视为占位符,并且它说 Tuples out of range 因为我没有足够的值。我也尝试过将它用作占位符,然后在我执行 cursor.execute(query, ('%')) 时放置 '%' 但它说:

ValueError: 不支持的格式字符

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

最佳答案

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

When parameters are used, in order to include a literal % in the queryyou can use the %% string:

>>> cur.execute("SELECT (%s % 2) = 0 AS even", (10,))       # WRONG
>>> cur.execute("SELECT (%s %% 2) = 0 AS even", (10,)) # correct

关于python - psycopg2 Python 在字段 postgresql 中连接百分比 '%',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44847348/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com