请问SQL如何实现批量查询

2025-05-14 23:56:07
推荐回答(4个)
回答1:

好像解决办法有点愚蠢,但是确实可以这么用
先把那1000多个号码导出成文本
然后在sqlserver里建一张表
create table shenfenzheng (shengfenzheng_id varchar(18));

然后把导出的文本用UE编辑成
insert into shenfenzheng values ('xxxxxxxxxxxxxxxxxx');
insert into shenfenzheng values ('yyyyyyyyyyyyyyyyyy');
.
.
.
共1000条
然后在sqlserver里执行上述语句,记得后边一定要带分号

然后写个查询
select * from 工资表 where 身份证号 in(select shenfenzheng_id from shenfenzheng);
得到的就是你想要的结果
---------补充---------
你所说的用户是指客户端程序的用户,和数据库用户关系应该不大,各个客户端应该在程序里都有连接数据库的文件,也就是实际操作的用户连接数据库时用的都是数据库同一个用户,所以不用在每个用户下都建临时表

回答2:

很简单,直接在工资表所在的数据库里导入access的身份证号表,然后联合查询就可以了。

联合查询语句如下:
select A.身份证号,B.工资 from 工资表 A left join 工资表 B on A.身份证号=B.身份证号

如果你不会把access导入SQL server可以给我留言或网上查询资料。

回答3:

这个可以通过编程连接数据库来解决。
第一个外循环,将身份证号不断从access中导入,第二个内循环,将其带入SQL Server数据库验证,相同就输出。
可以使用ADO.NET实现。

回答4:

如果安全性要求不高的话,把苦客户端的省份证号传入SQL,直接在ACCESS里用参数查询.查询语句为.SELECT * FROM * WHERE IN (*),,可以试试