mysql中如何将2张表联立排序?

mysql中如何将2张表联立排序?,第1张

2张表关联排序,用union来做.

SELECT * FROM (SELECT id,ach,'X' AS counter,'A' AS class,date FROM tablename1 as t1 WHERE 1 UNION SELECT id,ach,counter,'B' AS class,date FROM tablename2 as t2 WHERE 1) AS tall order by date asc

建议增加条件,且为索引字段.其次查的数据量不能太大,不然临时表会占据较多的内存空间.宁可牺牲硬盘空间,也不要无谓的牺牲内存空间.

从长远角度来说,建议整合2个表.

当然可以

可以 先把两个表 用 union all 联接,然后 在外面直接 select * from A_and_B order by createDate

基本语句

select * from (

select exp1,exp2,……expn,createDate from a

union all

select exp1,exp2,……expn,createDate from b

) as a_and_b order by createDate

注意,union all 中的两个 select 中,需要 一样多的 与 相同顺序的 字段

select * from(SELECT count(*) as count FROM `medal` `m` INNER JOIN `medal_list` `ml` ON `ml`.`medalId`=`m`.`Id` GROUP BY ml.stuId

) table_a order by table_a.count desc


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/7468413.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-06
下一篇 2023-04-06

发表评论

登录后才能评论

评论列表(0条)

保存