当前位置:编程学习 > VB >>

VB+ACCESS数据库的SQL多表联合查询问题

--------------------编程问答-------------------- 如果少量数据,用in没有问题,如果数据量达到一定的级别,比如1W以上,最好别用in

具体的代码不写了,你可以看看 inner join ,在查询分析器的sql帮助里有. --------------------编程问答-------------------- SELECT CPOutList1.cpOutNo As Final_OutNo, CPFileList.cpFileNo, CPOutList2.cpOutNo, CPFileList2.cpFileNo FROM CPOutList, CPOutList1, CPOutList2 WHERE CPOutList1.cpOutNo = CPOutList2.cpOutNo And CPFileList.cpFileNo = CPFileList2.cpFileNo And cpClient='客户1' AND cpState='A'
--------------------编程问答-------------------- 你好 of123
想问一下
SELECT a.*,a.* FROM a INNER JOIN b ON a.a1=a.a1
SELECT a.*,a.* FROM WHERE a.a1=b.b1
这2种查询方式,有什么不同啊,用 INNER JOIN 和 WHERE条件,哪个比较快呢 --------------------编程问答-------------------- http://download.csdn.net/detail/veron_04/1644211 --------------------编程问答-------------------- http://download.csdn.net/detail/veron_04/1644211 
这里没找到到有关SQL的内容啊 --------------------编程问答--------------------
引用 3 楼 shi998 的回复:
你好 of123
想问一下
SELECT a.*,a.* FROM a INNER JOIN b ON a.a1=a.a1
SELECT a.*,a.* FROM WHERE a.a1=b.b1
这2种查询方式,有什么不同啊,用 INNER JOIN 和 WHERE条件,哪个比较快呢


说实话,我不知道。我一直假设它们在 Jet Engine 平台是同样执行的。也许与数据库引擎的具体实现有关。 --------------------编程问答-------------------- 现在又发现新问题
我用2种  INNER JOIN 和 WHERE条件 都试过了,就是会查找出相同的重复记录
比如
SELECT * FROM CPOutList1 INNER JOIN(CPOutList2 INNER JOIN CPFileList ON CPFileList.cpFileNo = CPOutList2.cpFileNo ) ON CPOutList2.cpOutNo=CPOutList1.cpOutNo WHERE CPFileList.cpState='A'
这样查询出来 ,我想要的应该是
表名 CPOutList1
cpOutNo   cpClient
d1       客户1
中的这d1条记录
可是实际记录集里却是2条相同的
d1       客户1
d1       客户1
这不是我想要的,因为我想得到的只是CPOutList1中的记录,而且不能有重复的
补充:VB ,  数据库(包含打印,安装,报表)
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,