java开发中,sql有2个表,得到一个2维数组,类似于tree

tab1countgididtext1200001默认分组2200002默认分组3250001默认分组根据gid得到id(id代表多少组)--20000就有2个分组tab... tab1
count gid id text
1 20000 1 默认分组
2 20000 2 默认分组

3 25000 1 默认分组

根据gid 得到id(id代表多少组)--20000 就有2个分组

tab2
count gid id text

1 20000 1 20000
2 20000 2 20001
3 25000 1 25000
根据gid和id 来找到text
希望得到:
-20000
------默认分组1
-------------20000
------默认分组2
-------------20001
求大神指教该怎么做,sql语句怎么写
展开
 我来答
漂洋过海的狐狸
2015-05-11 · 超过23用户采纳过TA的回答
知道答主
回答量:39
采纳率:100%
帮助的人:26.9万
展开全部
写了个,不知道是不是你需要的。。
思路是这样的:先查最大的分组,再查二级,再查三级,根据id来定义二级和三级的parent_id。
select
DISTINCT gid as id,
null as parent_id,
gid as text
FROM tab1
UNION
select
CONCAT(t1.gid,'_',t1.id) as ID,
t1.gid as parent_id,
CONCAT(t1.text,t1.id) as text
FROM tab1 t1
UNION
SELECT
CONCAT(t2.gid,'__',t2.id) as ID,
CONCAT(t2.gid,'_',t2.id) as parent_id,
t2.text as text
FROM
tab2 t2
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式