programing

ORDER 2개의 옵션 중에서 낮은 숫자를 선택하지 않음으로써

megabox 2023. 10. 21. 10:17
반응형

ORDER 2개의 옵션 중에서 낮은 숫자를 선택하지 않음으로써

목적:

항목 선택has_t "1"있을 때마다, 없을 경우 다음 항목을 선택합니다.has_t "2". 해당 방문에 사용되는 나머지 항목은 모두 "more_items" 열에 들어갑니다.

이슈:

현재 코드는 먼저 다음 코드를 선택하고 있습니다.has_t "2", 대신에has_t "1"

SELECT iu.*,`t`.`o_id`,
v.GID,v.MSID,
GROUP_CONCAT(DISTINCT CONCAT(iu.item_no,'|##|',t.s_amount,'|##|',t.e_item_ordered,'|##|',IFNULL(t.e_item_name,'No-Name-In-T-TBL'),'|##|',IFNULL(t.com,''),'|##|',IFNULL(t.post_s_e,''),'|##|',IFNULL(t.o_id,'')) SEPARATOR '|#|') AS MoreItems,
t.post_s_e,t.e_item_name,t.click_time
FROM `items_unique` iu
LEFT JOIN visits v ON v.id = iu.visit_id
LEFT JOIN trans t ON t.visit_id = iu.visit_id AND t.e_item_ordered = iu.e_item_ordered
WHERE iu.product_id = $PID AND has_t > 0 AND (t.com >= 10 OR has_t = 1)
GROUP BY `v`.`id` ORDER BY v.visited_at DESC LIMIT 10

참고: 이전 코드 버전은 호환되지 않는 SQL 하위 쿼리 순서를 사용하여 수행한 것으로 보이며, 마리아에서는 작동하지 않습니다.DB:

ORDER BY `iu`.`has_t` LIMIT 18446744073709551615

언급URL : https://stackoverflow.com/questions/54506417/order-by-not-choosing-the-lower-number-out-of-2-options

반응형