MySQL-MYSQL两个不关联表查询并且根据某个相同名称字段排序

UI设计界面 UI设计界面 主题:1059 回复:2190

MySQL-MYSQL两个不关联表查询并且根据某个相同名称字段排序

浮生未歇 发布于 2017-08-15 字数 709 浏览 935 回复 1

查询两个表 A和B 两个表互不关联 数据分别为表A
请输入图片描述 表B
请输入图片描述
结果为全外连接 并且根据B和B1的大小进行比较大小排序
结果为
请输入图片描述
请问如何操作 求救命
也就是根据B和B1的大小进行排序 2--2.5--3--4
其实 我想要的结果就是 表A表示实体类A 表B表示实体类B 同时出现A和B的各个实体 再根据实体类A和B中的一个属性(共同名字(date))进行排序 放去一个一个LIST里面 这样就可以取出第一条为A2第二条为B1 第条为B2 第四条为A1

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

支持 Markdown 语法,需要帮助?

评论(1

偏爱自由 2017-08-29 1 楼

不用子查询的情况下,提供下面一些思路:
您的数据不便于操作,所以假设有如下两个表

<pre>
表t_a:
ID NAME
4 four
1 one

表t_b:
NO NAME
3 three
2 two
<pre>

思路一:

1 select * from
2 (
3 (select a.id, a.name, a.id tmp from t_a a)
4 union all
5 (select b.no, b.name, b.no tmp from t_b b)
6 ) as t_c
7 order by tmp desc

在表t_c的某行记录中,如果这行记录原本对应表t_a,则该行记录的tmp列的值就是表t_a的id列的值,...你懂的

思路二:
1.创建一个视图,视图的列为表A和表B的全连接的列,再加上一个列TMP
2.向视图插入表A所有记录,同时设置列TMP的值为表A的列A的值
3.向视图插入表B的所有记录,同时设置列TMP的值为表B的列B1的值
4.查询视图所有记录,按照列TMP降序显示

以上思路稍作修改可以满足你的需求,O(∩_∩)O