Bạn có thể làm điều gì đó như thế này *:
select * from (select symbol_name , (prevclose_val-close_val) as losers,'daily' as `type` from historical_data where current_day >= '2015-12-14' order by losers asc limit 10 ) as sub_daily
union
select * from (select symbol_name , (prevclose_val-close_val) as losers,'weekly' as `type` from historical_data where current_day >= '2015-12-7' order by losers asc limit 10 ) as sub_weekly
union
select * from (select symbol_name , (prevclose_val-close_val) as losers,'monthly' as `type` from historical_data where current_day >= '2015-11-14' order by losers asc limit 10 ) as sub_monthly;
Nhân tiện, bạn thực sự nên thay đổi trường ngày của mình từ "varchar" thành "DATE" hoặc "DATETIME" và sử dụng yyyy-mm-dd
định dạng cho ngày của bạn. Bằng cách đó, bạn có thể sử dụng MySQL để thực hiện các phép tính vào ngày của mình.
* truy vấn này yêu cầu current_day
của bạn trường là một date
hoặc datetime
loại.