hibernate抓取效率问题

本文通过对比不同数据分布情况下内连接与左连接的查询效率,分析了Hibernate在处理大量数据时的表现。实验设置了几种不同的数据分布场景,并记录了查询所需的时间。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

hibernate抓取效率问题

在csdn上面看到的……

--drop table #t1,#t2
create table #t1(userid int not null)
create table #t2(userid int not null)
declare @i int,@1 INT,@2 INT ,@3 INT
SELECT @1= 90000 ,@2= 80000,@3= 100000

set @i = 1
while @i <= @1
begin
insert into #t1(userid) values(@i)
set @i= @i + 1
end

set @i = @2
while @i <= @3
begin
insert into #t2(userid) values(@i)
set @i= @i + 1
end

declare @time datetime,@show varchar(8000)
set @time = getdate()

select *
from #t1 a inner join #t2 b
on a.userid=b.userid

set @show = 'inner join: ' + cast(datediff(ms,@time,getdate()) as varchar)
set @time = getdate()
print @show

select *
from #t1 a left join #t2 b
on a.userid=b.userid

set @show = 'left join: ' + cast(datediff(ms,@time,getdate()) as varchar)
set @time = getdate()
print @show

-----------------

A有B没有 都有 A没有B有 A表数据 B表数据 INNER LEFT
80% 10% 10% 1~90000 80000~100000 483 1596
33% 33% 33% 1~60000 30000~90000 873 1280
10% 80% 10% 1~90000 20000~100000 1610 1826
45% 10% 45% 1~55000 45000~100000 516 1140
10% 80% 10% 1~90000 20000~100000 1733 1923
10% 10% 80% 1~20000 10000~100000 453 610

昨天的第二个实验应该属于这里的最后一种情况,这里测了多次,取了个平均值
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值