SQL / Presto 错误:TYPE_MISMATCH:逻辑表达式的左侧必须评估为布尔值实际:varchar

问题描述

我正在尝试将所有活动的订阅状态与 customers 表中的运输数据与费用表中的总费用和退款。
错误来自第 29:88 行,或 c.shipping_address_city 之后的第二个“group by”。查询的第一个“分组依据”部分不会出现此问题,我将其复制并粘贴到第二个 select 语句中。 当我将“分组依据”字段减少到只有 c.email 或。 c.id,我有一个聚合错误

active_customer_plans as (

  select c.email,c.id as customer_id,c.shipping_name,c.name,c.shipping_address_line1,c.shipping_address_line2,c.shipping_address_city,c.shipping_address_state,c.shipping_address_postal_code,c.shipping_address_country,sum(charges.amount) as total_charges,sum(charges.amount_refunded) as total_refunds
  from subscriptions sub
    left join charges on sub.customer_id = charges.customer_id
    left join customers c on sub.customer_id = c.id
  where sub.status in ('active','past_due')
  group by c.email,c.id,c.shipping_address_country
  

  union all

  -- including subscriptions migrated from vhx existing as trialing
  -- and excluding paused subscriptions
  select c.email,sum(charges.amount_refunded) as total_refunds,'active (migrated_trialing)' as status
  from subscriptions sub
    left join charges on sub.customer_id = charges.customer_id
    left join customers c on sub.customer_id = c.id
  where sub.status in ('trialing')
  group by c.email,c.shipping_address_country
  
    and exists (
      select sub_Meta.subscription_id
      from subscriptions_Metadata sub_Meta
      where sub.id = sub_Meta.subscription_id
        and sub_Meta.key = 'zype_migration'
        and sub_Meta.value = 'true'
    )
    and not exists (
      select sub_Meta.subscription_id
      from subscriptions_Metadata sub_Meta
      where sub.id = sub_Meta.subscription_id
        and sub_Meta.key = 'zype_status'
        and sub_Meta.value = 'paused'
    )


  -- excluding subscriptions migrated from vhx existing as trialing
  -- and excluding paused subscriptions

)
select status as subscription_status,email as customer_email,customer_id,shipping_name,name,shipping_address_line1,shipping_address_line2,shipping_address_city,shipping_address_state,shipping_address_postal_code,shipping_address_country,total_charges,total_refunds
from active_customer_plans

order by 1,2

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...