我用如下代码构造查询语句,并加循环:
strsql="SELECT * FROM (gs LEFT JOIN gr ON gs.uid = gr.uid) LEFT JOIN gn ON gs.uid = gn.uid;"
能正常查询,但结果处理没有达到理想效果,如下:
gs gn gr (表)
A公司 张三 123
B公司 李四 345
B公司 王五 345
C公司 赵六 456
C公司 赵六 567
结果是当gn表或者gr表有相同uid,他就全部显示出来,有什么方法能处理成这样:gs处理一次(rs.movenext显示所有公司),gn、gr针对公司uid循环;
或者这样:
gs、gn、gr表里的内容显示一次,有相同uid扔掉,不知道有没有描述清楚,我想得到的实际效果如下:
结果一:
gs gn gr (表)
A公司 张三 123
B公司 李四 345
王五
C公司 赵六 456
567
以上如果构造三次SQL是可以的,但是要提交uid,并针对gn、gr rs.movenext显示所有
结果二:
gs gn gr (表)
A公司 张三 123
B公司 李四 345
C公司 赵六 456
以上如果构造三次SQL是可以的,但是要提交uid,才能显示gn、gr的内容,可用gs.uid=gr.uid and gs.uid=&requ......
现在我不想用提交uid的方式查询,直接用上面的SQL语句,显示所有并达到上面的两种结果中的一种,请问有什么方法可以解决,用更改SQL语句吗?谢谢大家
[求助]多表查询,但又重复显示!