星星之火

燎原之势不可挡
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

2013-3-27

1、每个 GROUP BY 表达式必须至少包含一个不是外部引用的列

解析:

今天在做Sql查询的时候,遇到了这样一个问题,报错为“每个 GROUP BY 表达式必须至少包含一个不是外部引用的列”,sql语句如下:

Select  Count(total_domians),@Query  from TLDSalesReport where Name=‘China’ group

@Query出错的原因是因为group by语句所跟的内容一般是数据表中的字段或者数据表的表达式,因为上边的句子中在group by后边使用的是动态的参数,为外部实例,所以才会报上变得错误

这里有一个解决方法,即使用存储过程动态的生成Sql语句并执行

Declare procedure DynamicGroupBy( @groupbyfield varchar(200))

Begin

Select count(*),@groupbyfield from TLDSalesReport group by @groupbyfield

End

即可

2、  加载页面时调用Js方法

我们有两种方法可以实现上述需求

1)       一般的加载页面调用js方法:

Window.onload=function(){

Alert(“Hello Olive”);

}

该方法的缺点在于,只有整个页面的文档加载完之后才会执行调用

2)       使用Jquery来实现调用

a)       $(document).read(function(){ alert(“Hello Olive”);});

b)       $(function(){ alert(“Hello Olive”);});

使用Jquery调用js函数的这两种方法基本上是一样的,b方法是a方法的简写,而且使用Jquery方式调用js函数只需要加载所有的Dom结构即可,而使用js调用函数还需等待所有的外部资源加载完成才行

3、  在页面加载时调用js文件中的方法

Hello.js内容如下:

Function hello(){alert(“Hello Olive”);}

Hello();

在页面加载时调用该函数:

只需要在aspx页的<head></head>节点中引入该js文件和Jquery.js文件即可

如下:

<script src="../Scripts/jquery-1.4.1.js" type="text/javascript"></script>

 <script src="JS/Hello.js" type="text/javascript"></script>