我的生产查询与一个具有大文本列的选择有10个连接。 问题是,由于连接,一些搜索从重复数据返回的数据超过8mb ... 7mb。像上面的图像,但更大。
我的表结构示例:
create table A (
Id int primary key identity(1,1),
Value varchar(100)
)
create table B(
Id int primary key identity(1,1),
AId int,
Value varchar(100)
)
create table C(
Id int primary key identity(1,1),
BId int,
Value varchar(100)
)
插入内容:
insert into A values ('value A1')
insert into A values ('value A2')
insert into A values ('value A3')
insert into B values(1, 'value B1')
insert into B values(1, 'value B2')
insert into B values(1, 'value B3')
insert into C values(1, 'value C1')
insert into C values(1, 'value C2')
insert into C values(1, 'value C3')
如何以相同的加入效果或更好的方式以智能方式返回必要的数据?
用于执行查询的命令是:
select * from A
left join B on A.Id = B.AId
left join C on C.BId = B.Id
where A.Id = 1
答案 0 :(得分:2)
您可以使用err!?
仅返回值的第一个外观:
row_number()