Select 来自 SQL 服务器的不同数据使用 2 个值

Select distinct data from SQL Server using 2 values

我希望能够从我们使用的每个电子邮件模板的 queuedmessage table 中提取 1 行数据。当我在 queuedmessageid 上使用 group by 时,我得到了所有记录。理想情况下,我只想为每个消息模板返回一个 queuedmessageid。这是我的代码。

select distinct(messagetemplateid), QueuedMessageId 
from mail.QueuedMessage
where messagesent = 1
group by messagetemplateid, QueuedMessageId

我希望数据库中的每个模板返回 1,因此最多 250 行。相反,我取回了每个 messagetemplate.

的所有数据

DISTINCT 不是函数! SELECT DISTINCT 是一个子句。一个很少,很少与 GROUP BY.

一起使用

尝试聚合函数:

select messagetemplateid, min(QueuedMessageId)
from mail.QueuedMessage
where messagesent = 1
group by messagetemplateid;