1

我对 mssql 查询有疑问。这是一个查询:

    SELECT
     MAX(sprNomenklatura._IDRRef) AS 'link',
     pictures._Fld8035 AS 'picture'
    FROM
     _Reference62 sprnomenklatura
     LEFT JOIN _InfoRg8032 pictures
     ON pictures._Fld8033RRef = sprNomenklatura._IDRRef
   GROUP BY 
    sprnomenklatura._IDRref

问题是我要选择的字段之一(pictures._Fld8035)是“图像”类型。该字段不能提供给 MAX、MIN 等聚合函数而且我无法完成此查询,因为 mysql 希望该字段位于某个聚合函数或“GROUP BY”语句中(mssql 也不允许数据类型“图像”)。

我应该为这个“图像”字段类型使用什么聚合函数来使查询工作?

是的,它可以将此查询拆分为 2 个不同的查询,但 sprNomenklatura._IDRRef 字段是二进制数据,并且在第二个查询结果语法错误中将其值放入“IN”语句中。

4

1 回答 1

1

尝试这个

SELECT link,pictures._Fld8035 as 'picture' 
    FROM
    (
    SELECT
        MAX(sprNomenklatura._IDRRef) AS 'link'
        FROM _Reference62 sprnomenklatura
        GROUP BY sprnomenklatura._IDRref
    ) as a
    LEFT JOIN _InfoRg8032 pictures
        ON pictures._Fld8033RRef = a.link
于 2013-07-08T09:41:32.460 回答