小编sFo*_*jit的帖子

错误:对于SELECT DISTINCT,ORDER BY表达式必须出现在选择列表中

我有一个表"campaign_items",其中包含列(预算,花费),我想使用公式剩余预算计算剩余预算=预算 - 已用完

现在我在查询下运行:

select distinct a.budget,a.spent 
from campaign_items a 
where campaign_item_id=12345 
order by a.budget-a.spent
Run Code Online (Sandbox Code Playgroud)

但是我收到了错误:

错误:对于SELECT DISTINCT,ORDER BY表达式必须出现在选择列表中

注意:我无法DISTINCT从查询中删除关键字,因为查询是使用JdbcTemplate生成的

任何人都可以帮我解决这个错误吗?

postgresql

4
推荐指数
1
解决办法
6685
查看次数

postgreSQL 中的显式类型转换

我使用下面的查询连接两个表:

update campaign_items
set last_modified = evt.event_time
from (
    select max(event_time) event_time
        ,result
    from events
    where request = '/campaignitem/add'
    group by result
    ) evt
where evt.result = campaign_items.id
Run Code Online (Sandbox Code Playgroud)

其中结果列是字符变化类型,id是整数类型但结果列中的数据包含数字(即12345)

我将如何运行此查询并将结果类型(字符)转换为 id(整数)

postgresql

3
推荐指数
1
解决办法
5532
查看次数

标签 统计

postgresql ×2