asp.net - SQL如何在一列中使用ORDER BY语句

标签 asp.net mysql sql sql-server

我需要通过此 SQl 语句进行排序以获得 <%# Eval("ICount") %> 的项目计数

问题是我不知道如何“ORDER BY”这个

SQL:

SELECT DATEPART(DAY,BLG_DATE) as DDay,
      datename(month,BLG_DATE) as DMonth,
       DATEPART(YEAR,BLG_DATE) as DYear,COUNT(BLG_DATE) as ICount
FROM [BLG] 
INNER JOIN [ACC] 
ON [BLG].ACC_ID=[ACC].ACC_ID 
WHERE [BLG].ACC_ID='1'and [BLG].BLG_DATE LIKE '%2013%' ORDER BY --????

ASP.NET:

<asp:Repeater ID="childRep" runat="server">
     <ItemTemplate>
          <li><a href="blog.aspx?month=<%# Eval("DMonth") %>"><em><%# Eval("DDay") %></em><%# Eval("DMonth") %><span><%# Eval("ICount") %></span></a></li>  
     </ItemTemplate>
 </asp:Repeater>

我需要 DMonth、DDay、DYear 和 ICount 列来填充 Repeater

注意:我只有表 BLG(BLG_ID,ACC_ID,BLG_DATE) 和 ACC(ACC_ID,ACC_USER,ACC_PASS)

最佳答案

这是你要找的吗?

SELECT DATEPART(DAY,BLG_DATE) as DDay,
      datename(month,BLG_DATE) as DMonth,
       DATEPART(YEAR,BLG_DATE) as DYear ,
       (SELECT COUNT(*) 
         FROM [BLG] 
          INNER JOIN [ACC]  ON [BLG].ACC_ID=[ACC].ACC_ID 
         WHERE [BLG].ACC_ID='1'and [BLG].BLG_DATE LIKE '%2013%') AS ICount
FROM [BLG] 
INNER JOIN [ACC] 
ON [BLG].ACC_ID=[ACC].ACC_ID 
WHERE [BLG].ACC_ID='1'and [BLG].BLG_DATE LIKE '%2013%'

关于asp.net - SQL如何在一列中使用ORDER BY语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18010944/

相关文章:

mysql - 尝试获取非对象的属性 ErrorException (E_NOTICE)

mysql - SQL 脚本 - #define 的等价物是否存在?

c# - 使用 Hostable Web Core 的自托管 Web 应用程序

c# - 如何解决 "Procedure or function has too many arguments specified"异常?

mysql - 使用列名进行表数据转储

php - Mysql 行计数与最后输入的值不匹配

php - MySQL SELECT from array of ids 其中一个是强制性的

sql - Sql 语句的成本是什么意思?

c# - ASP.NET AutoPostBack 正在清除表单数据

asp.net - 如何仅针对特定页面类型使 http 模块发生火灾事件