mysql - 将 MySQL 查询转换为 SQL Server (MSSQL/SQLSRV)(使用 DISTINCT)

标签 mysql sql-server

我需要做什么才能将此查询转换为在 SQL Server 中工作?

SELECT 
    DISTINCT(map_objetivos.OBJ_RowID) AS test,
    map_objetivos.OBJ_Objetivo
FROM 
    map_admin_caminho_critico_indicadores
INNER JOIN 
    map_admin_caminho_critico ON CCR_RowID = CCI_CaminhoDR
INNER JOIN 
    map_indicadores ON IND_RowID = CCI_IndicadorDR 
INNER JOIN
    map_objetivos ON OBJ_RowID = IND_ObjetivoDR
GROUP BY
    map_objetivos.OBJ_RowID

最佳答案

与 MySQL 不同,SQL Server 不允许在选择列表中出现未聚合或分组的字段。此外,您的 DISTINCT 是多余的。试试这个:

SELECT 
    map_objetivos.OBJ_RowID AS test,
    map_objetivos.OBJ_Objetivo
FROM 
    map_admin_caminho_critico_indicadores
INNER JOIN 
    map_admin_caminho_critico ON CCR_RowID = CCI_CaminhoDR
INNER JOIN 
    map_indicadores ON IND_RowID = CCI_IndicadorDR 
INNER JOIN
    map_objetivos ON OBJ_RowID = IND_ObjetivoDR
GROUP BY
    map_objetivos.OBJ_RowID,
    map_objetivos.OBJ_Objetivo

关于mysql - 将 MySQL 查询转换为 SQL Server (MSSQL/SQLSRV)(使用 DISTINCT),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7893969/

相关文章:

sql - 将一列中的值解析为另一个表中的多列

mysql - 计算与初始月份相比的百分比变化

c# - 当数据库中的事务完成但连接问题导致异常时,如何解决这种情况?

php - 从文本文件读取然后插入 mysql 时结果变为空白

mysql - 分页时的 SQL 错误

sql - 如何将更新的记录移动到历史表中?

c# - "Specified cast is not valid"当空值返回为 Nullable<int>

sql-server - 如何在选择查询中生成自动增量字段

php - 通过 PHP 执行的 REGEXP 的奇怪 MySQL 结果集

mysql - 如何比较sql查询中的日期?