SELECT
t.id AS 'orderId',
t.organization_id AS 'organizationId',
t.create_time AS 'createTime',
t.partake_num,
t. STATUS AS 'status',
t.type AS 'type',
t.actual_area AS 'actualArea',
t.area_type AS 'thirdTypeId',
r. NAME AS 'actualAreaName',
t.area_type_name,
t.sign_status AS 'signStatus',
t.area_type_level AS 'areaTypeLevel',
t.sign_out_time AS 'signOutTime',
t.sign_time AS 'signTime',
t.topic,
att.attr_name,
att.attr_val
FROM
t_rsv_order t
INNER JOIN t_rsv_order_attr att on
CASE
WHEN t.is_cycle = '0' THEN att.order_id = t.id
WHEN t.is_cycle = '1' THEN att.order_id = t.order_parent_id
END
AND att.service_type = 2
AND att.attr_json LIKE concat('%数字%')
LEFT JOIN t_rsv_resource r ON t.actual_area = r.id
WHERE
t.organization_id = '6170867344908369926172328501773'
AND (
t.create_time >= STR_TO_DATE('2021-09-02', '%Y-%m-%d')
)
AND (
t.create_time <= STR_TO_DATE('2021-09-02 23:59:59', '%Y-%m-%d %H:%i:%s')
)
AND t.id IN ('63078179622551552021222452100030', '630778670619574272212102070000')
AND t. STATUS IN (20, 30)
AND CASE
WHEN t.is_cycle = '0' THEN
order_parent_id IS NULL
WHEN t.is_cycle = '1' THEN
order_parent_id IS NOT NULL
END
ORDER BY
t.create_time DESC
Mysql inner join 后case when用法
最新推荐文章于 2024-03-28 02:00:31 发布