我的表'meta'包含以下字段和值:
•col1 •col2 •col3 •REL •JOIN
1 John Smith 1 0
2 Peter Pan 2 0
3 Brat Pitt 3 0
4 Sarah Palin 1 00
5 King David 2 00
6 Coco Sha 3 00
7 Santa Claus 3 00
我想循环并显示一个列表,组合来自同一个表的数据如下:
•col1 •col2 •col3 •REL •JOIN •col1 •col2 •col3 •REL •JOIN
1 John Smith 1 0 1 John Smith 1 0
1 John Smith 1 0 2 Peter Pan 2 0
1 John Smith 1 0 3 Brat Pitt 3 0
4 Sarah Palin 1 00 4 Sarah Palin 1 00
4 Sarah Palin 1 00 5 King David 2 00
4 Sarah Palin 1 00 6 Coco Sha 3 00
4 Sarah Palin 1 00 7 Santa Claus 3 00
if * REL ='1'然后在下一次加入时使用col1,col2和col3与* REL ='1' * JOIN是最终加入的关键
答案 0 :(得分:0)
您可以按照以下方式实现上述连接逻辑。
select a.col1, a.col2, a.col3, a.REL, a.joinKey,
b.col1, b.col2, b.col3, b.REL, b.joinKey
from meta a join meta b on a.joinKey = b.joinKey
where a.REL = 1;
为此设置了一个sql小提琴。 SQL Fiddle
答案 1 :(得分:0)
看起来你正试图加入col1的第一个字符
select a.*, b.*
from meta a
join meta b on a.col1 = left(b.col1,1)