相关疑难解决方法(0)

这个公用表表达式的结果被评估了多少次?

我正在尝试找出我们在上一次测试过程中发现的错误.它涉及使用公用表表达式的查询.查询的主题是它模拟"第一个"聚合操作(获取此分组的第一行).

问题是,查询,似乎在某些情况下完全任意选择行-从同一组的多个行得到恢复,一些群体根本得到完全消除.但是,它总是选择正确的行数.

我已经创建了一个最小的例子来发布.有客户端和地址,以及定义它们之间关系的表.这是一个多少我期待在实际查询的简化版,但我相信它应该具有相同的特性,它是用来解释什么,我觉得是走错了一个很好的例子.

CREATE TABLE [Client] (ClientID int, Name varchar(20))
CREATE TABLE [Address] (AddressID int, Street varchar(20))
CREATE TABLE [ClientAddress] (ClientID int, AddressID int)

INSERT [Client] VALUES (1, 'Adam')
INSERT [Client] VALUES (2, 'Brian')
INSERT [Client] VALUES (3, 'Charles')
INSERT [Client] VALUES (4, 'Dean')
INSERT [Client] VALUES (5, 'Edward')
INSERT [Client] VALUES (6, 'Frank')
INSERT [Client] VALUES (7, 'Gene')
INSERT [Client] VALUES (8, 'Harry')

INSERT [Address] VALUES (1, 'Acorn Street')
INSERT [Address] VALUES (2, 'Birch Road') …
Run Code Online (Sandbox Code Playgroud)

sql sql-server common-table-expression

2
推荐指数
1
解决办法
1434
查看次数

标签 统计

common-table-expression ×1

sql ×1

sql-server ×1