插入命令中的SQL Count函数

时间:2011-06-07 15:46:11

标签: c# asp.net sql

我想设置其中一个字段的值,其数字是从count函数派生的。但是我该怎么做?

    StringBuilder insertCommand = new StringBuilder();
 insertCommand.Append("INSERT INTO Threads(UsersID,TopicsID,Date,ThreadTitle,ThreadParagraph,ThreadClosed,Views,Replies,PageNumber)");
    insertCommand.Append("VALUES(@uniqueIdentifier,@TopicsID,GETDATE(),@questionTitle,@questionParagraph,0,0,0,@pageNumber)");

要设置页面编号参数,我想执行以下操作:

    sqlCommand.Parameters.Add("@subTopic", SqlDbType.Int);
    sqlCommand.Parameters["@subTopic"].Value = "Count(ThreadID)/20";

我想在表Threads中输入一个可被20整除的数字到PageNumber字段。 注意:数字应该是一个整数..所以不应该返回10/20 = 0.5,而应该返回0.

1 个答案:

答案 0 :(得分:1)

您可以使用查询插页,如下所示:

INSERT INTO Threads (UsersID,TopicsID,Date,ThreadTitle,ThreadParagraph,
  ThreadClosed,Views,Replies,PageNumber)
SELECT @uniqueIdentifier,@TopicsID,GETDATE(),@questionTitle,
  @questionParagraph,0,0,0,FLOOR(Count(ThreadID)/20)
FROM table

假设subtopic参数名称是拼写错误而您实际上是pagenumber。你永远不会知道!