环境信息:
版本: doris-2.1.7
某个查询sql可以执行成功并返回数据, sql如下:
SELECT b.bill_no AS 模板号,
b.name AS 券名称,
a.coupon_bill_no AS 券码,
b.face_value AS 券金额,
cast(a.verification_time as date) AS 核销时间,
a.operation_platform AS 核销渠道,
a.retail_bill_no AS 中台单号,
c.name AS 领用人,
c.cell_phone_no AS 领用人手机号,
b.brand_name AS 品牌,
CASE
WHEN cast(b.coupon_type as CHAR) = '1' THEN '现金券'
WHEN cast(b.coupon_type as CHAR) = '2' THEN '折扣券'
ELSE NULL
END AS 券类型,
vip_member_channel.account_number AS 会员卡号,
cast(b.enable_date as date) AS 开始时间,
cast(b.disable_date as date) AS 结束时间,
cast(b.create_time as date) AS 制单时间,
cast(COALESCE(cast(b.modify_time as datetime(6)), b.lastchanged) as datetime(6)) AS 修改时间,
bas_channel.code AS 所属门店代码,
bas_channel.name AS 所属门店名称
FROM gxg_member_prod.vip_member_coupon_bill a
LEFT JOIN gxg_member_prod.vip_member_coupon b ON a.coupon_id = b.id
LEFT JOIN gxg_member_prod.vip_member_info c ON a.useful_by = c.member_id
LEFT JOIN e3plus_goods_prod.bas_brand bas_brand ON bas_brand.id = b.brand_id
LEFT JOIN gxg_ads.v_vip_member_account_number vip_member_channel ON vip_member_channel.member_id = c.member_id AND vip_member_channel.brand_id = b.brand_id
LEFT JOIN gxg_member_prod.vip_member_shop_guide vip_member_shop_guide ON vip_member_shop_guide.member_id = c.member_id AND vip_member_shop_guide.brand_id = b.brand_id
LEFT JOIN e3plus_support_prod.bas_channel bas_channel ON bas_channel.id = vip_member_shop_guide.shop_id
ORDER BY a.verification_time
将该sql封装成逻辑视图,则会报错:
create view test.view_6022 as
SELECT b.bill_no AS 模板号,
b.name AS 券名称,
a.coupon_bill_no AS 券码,
b.face_value AS 券金额,
cast(a.verification_time as date) AS 核销时间,
a.operation_platform AS 核销渠道,
a.retail_bill_no AS 中台单号,
c.name AS 领用人,
c.cell_phone_no AS 领用人手机号,
b.brand_name AS 品牌,
CASE
WHEN cast(b.coupon_type as CHAR) = '1' THEN '现金券'
WHEN cast(b.coupon_type as CHAR) = '2' THEN '折扣券'
ELSE NULL
END AS 券类型,
vip_member_channel.account_number AS 会员卡号,
cast(b.enable_date as date) AS 开始时间,
cast(b.disable_date as date) AS 结束时间,
cast(b.create_time as date) AS 制单时间,
cast(COALESCE(cast(b.modify_time as datetime(6)), b.lastchanged) as datetime(6)) AS 修改时间,
bas_channel.code AS 所属门店代码,
bas_channel.name AS 所属门店名称
FROM gxg_member_prod.vip_member_coupon_bill a
LEFT JOIN gxg_member_prod.vip_member_coupon b ON a.coupon_id = b.id
LEFT JOIN gxg_member_prod.vip_member_info c ON a.useful_by = c.member_id
LEFT JOIN e3plus_goods_prod.bas_brand bas_brand ON bas_brand.id = b.brand_id
LEFT JOIN gxg_ads.v_vip_member_account_number vip_member_channel ON vip_member_channel.member_id = c.member_id AND vip_member_channel.brand_id = b.brand_id
LEFT JOIN gxg_member_prod.vip_member_shop_guide vip_member_shop_guide ON vip_member_shop_guide.member_id = c.member_id AND vip_member_shop_guide.brand_id = b.brand_id
LEFT JOIN e3plus_support_prod.bas_channel bas_channel ON bas_channel.id = vip_member_shop_guide.shop_id
ORDER BY a.verification_time
创建逻辑视图报错信息如下:
SQL 错误 [1054] [42S22]: errCode = 2, detailMessage = Unknown column 'id' in 'e3plus_goods_prod.bas_brand'
fe开启debug打出来的日志: