0
在较大的查询中有以下子查询。我收到一个错误“子查询返回了超过1个值”。我不知道我该如何解决这个问题,并且仍然有两个查询的结果发生分歧。我正在使用SQL Server 2005.子查询返回了多个值错误
谢谢。
SELECT
sample_fields, -- some fields here
(SELECT
c1/c2 AS department_occupancy_rate -- doing division of results of both queries
FROM
property as c
JOIN (
SELECT store_id, cast(count(*) as decimal(10,2)) AS c1
FROM property
WHERE
non_ha =1
AND property_type LIKE '%587%'
GROUP BY store_id
) AS sub1
ON c.store_id = sub1.store_id
JOIN (
SELECT store_id, cast(count(*) as decimal(10,2)) AS c2
FROM property
WHERE
property_type LIKE '%587%'
GROUP BY store_id
) AS sub2
ON c.store_id = sub2.store_id
) as results,
FROM
sample_table -- a table here
INNER JOIN sample_table1
ON sample_table2 -- joining here
GROUP BY sample_field -- grouping
尝试SELECT TOP 1 ...或SELECT ... LIMIT 1取决于你的SQL风格。 –
您是否尝试过重构该SQL?这很漂亮... –
你检查了你的查询的最后一个连接 - > INNER JOIN sample_table1 ON sample_table2? – Luftwaffe