我有三个表tag,page,pagetag
有了下面的数据
页
ID NAME
1 page 1
2 page 2
3 page 3
4 page 4
Run Code Online (Sandbox Code Playgroud)
标签
ID NAME
1 tag 1
2 tag 2
3 tag 3
4 tag 4
Run Code Online (Sandbox Code Playgroud)
pagetag
ID PAGEID TAGID
1 2 1
2 2 3
3 3 4
4 1 1
5 1 2
6 1 3
Run Code Online (Sandbox Code Playgroud)
我想在单个查询中获取一个字符串,其中包含每个页面的对应标记名称.这是我想要的输出.
ID NAME TAGS
1 page 1 tag 1, tag 2, tag 3
2 page 2 tag 1, tag 3
3 …Run Code Online (Sandbox Code Playgroud) 在 Informix 的 SQL 中寻找一个模拟 MySQLgroup_concat功能的查询。
MySQL 的group_concat作用是创建组中所有成员的枚举。
因此数据如下:
| 订单号 | 项目名 | 价格 |
|---|---|---|
| 1 | 纸 | 10 |
| 1 | 笔 | 5 |
| 2 | 糖 | 15 |
以及以下查询:
select group_concat(itemName), sum(price)
from order_details
group by orderid
Run Code Online (Sandbox Code Playgroud)
会产生:
| 项目 | 价格 |
|---|---|
| 纸、笔 | 15 |
| 糖 | 15 |
在 Informix 中实现这一目标的最有效方法是什么?我们一定要使用存储过程吗?
例如,我有两张桌子.第一张桌子是学生,第二张桌子是学生正在上的课程.如何使用select语句,以便我可以看到两列学生和课程,以便用逗号分隔课程.
谢谢.