0°

在PolarDB查询视图的语句base表加了列存 也不走列存吗?[阿里云]

在PolarDB查询视图的语句base表加了列存 也不走列存吗?SELECT
DISTINCT sdt.produce_id,
sdt.customer_id,
sdt.company_name AS company_name_m,
DATE_FORMAT(sdt.anthentication_time, ‘%Y-%m-%d %H:%i:%s’) AS anthentication_time,
sdt.company_type,
CASE
WHEN IFNULL(sdt.company_type, ”) = ” THEN ”
ELSE CONCAT(
‘typedefine.VERIFICATION_COMPANY_TYPE.’,
sdt.company_type
)
END AS company_type_m,
sdt.country_type,
sdt.country_name AS country_name_m,
sdt.member_type,
sdt.prefix_domain_name,
sdt.products_id,
sdt.products_url_name,
sdt.cas_no,
sdt.produce_name,
sdt.produce_url_name,
sdt.goods_picture_s,
sdt.goods_picture_m AS goods_picture,
sdt.goods_picture_b,
sdt.complete_flag,
sdt.hot_flag,
sdt.main_flag,
sdt.grade_name,
sdt.content,
sdt.package_name,
sdt.n_price_type,
sdt.n_price_trade_term_type,
sdt.n_price_trade_term_text,
sdt.n_price,
sdt.n_price_unit,
sdt.n_price_currency,
sdt.n_price_currency_symbol,
CASE
WHEN CEILING(IFNULL(sdt.n_min_price, 0)) = 0 THEN ‘0’
WHEN sdt.n_price_end_date < CURRENT_DATE() THEN '0'
ELSE ‘1’
END AS n_pending_flag,
sdt.activity_id,
sdt.activity_type,
sdt.a_price_trade_term_type,
sdt.a_price_trade_term_text,
sdt.a_price,
sdt.a_price_unit,
sdt.a_price_currency,
sdt.a_price_currency_symbol,
sdt.vip_icon_flag,
sdt.cbi_flag
FROM
t_e_all_produce_seller_activity sdt
INNER JOIN t_e_products_category pc ON pc.products_id = sdt.products_id
AND (pc.category_id LIKE CONCAT(‘c1112’, ‘%’))
AND IFNULL(pc.delflag, ”) ‘1’
WHERE
(
IFNULL(sdt.activity_id, ”) ”
OR (
IFNULL(sdt.n_min_price, 0) > 0
AND sdt.n_price_end_date >= CURRENT_DATE()
)
)
AND IFNULL(sdt.delflag, ”) != ‘1’
ORDER BY
sdt.produce_update_date DESC
LIMIT
3;
t_e_all_produce_seller_activity是个视图

以下为热心网友提供的参考意见

这个新版本已经支持了, 可以先简单修改一下sql, 即在 select 后面加上order by的列 sdt.produce_update_date 就好了。这个功能会在 8.0.2.2.20 版本中支持, 但这个版本还没发布, 可以先简单修改一下 sql。
此回答整理自钉群“PolarDB专家面对面 – HTAP(列存索引)”

「点点赞赏,手留余香」

    还没有人赞赏,快来当第一个赞赏的人吧!
=====这是一个广告位,招租中,联系qq 78315851====