有没有什么办法来缩短这个查询就像使用案例,例如?如何缩短这个SQL查询?
SELECT ords_id
FROM orders o
JOIN stocks s ON o.ords_stks_id = s.stks_id
WHERE (s.stks_print_btn_status LIKE '%901%'
AND o.ords_stas_id = 90
AND o.lsnr IS NOT NULL
AND o.ords_id = orderid)
OR (s.stks_print_btn_status LIKE '%1001%'
AND o.ords_stas_id = 100
AND o.lsnr IS NOT NULL
AND o.ords_id = orderid)
OR (s.stks_print_btn_status LIKE '%801%'
AND o.ords_stas_id = 80
AND o.lsnr IS NOT NULL
AND o.ords_id = orderid)
OR (s.stks_print_btn_status LIKE '%231%'
AND o.ords_stas_id = 23
AND o.lsnr IS NOT NULL
AND o.ords_id = orderid)
查找公用部分,如'o.lsnr不为空'和'o.ords_id = orderid',你只需要它们一次。 – jarlh