易截截图软件、单文件、免安装、纯绿色、仅160KB

用CASE WHEN实现sqlserver数据库的分类汇总功能

/*用CASE WHEN实现sqlserver数据库的分类汇总功能*/
/*例1:统计个数*/
/*表结构
id  cityid  major
1   1         A
2   1         B
3   2         B
4   2         A
5   1         A
6   2        B
7   1        C
8   2         C
结果:
cityId  A  B  C
1        2  1  1
2        1  2  1
*/
SELECT cityId,SUM(CASE WHEN major='A' THEN 1 ELSE 0 END) AS 'A',
                      SUM(CASE WHEN major='B' THEN 1 ELSE 0 END) AS 'B',
                      SUM(CASE WHEN major='C' THEN 1 ELSE 0 END) AS 'C'
            from TestCase1 GROUP BY cityId
/*例1:统计总和数*/
/*表结构
Id cityId catalogId Num
1   1        A              3
2   1        B              5
3   2        A              8
4   2        B             2
5   1      &


相关文档:

.NET SQLServer2005 XML字段

//这是添加 
private void button1_Click(object sender, EventArgs e)
        {
            string s = "Persist Security Info=False;Integrated Security=SSPI;database=IIntegration;server=(local)";
 &n ......

随机选择行的SQL语句? ORACLE SQLSERVER ECT.

MySQL:
SELECT column from table
ORDER BY RAND()
LIMIT 1
PostgreSQL:
SELECT column from table
ORDER BY RANDOM()
LIMIT 1
Microsoft SQL Server:
SELECT TOP 1 column from table
ORDER BY NEWID()
IBM DB2
SELECT column, RAND() as IDX
from table
ORDER BY IDX FETCH FIRST 1 ROWS ONLY
Thanks Ti ......

SQLServer获取每组前10%的数据

sqlserver2005有关键字ntile(x)和over(partition by.. order by..)子句配合.
比如获取每个表的前10%个字段。
select id , name , colid , rn from (
select * , rn = ntile (10 )
    over (partition by id order by colorder )
from syscolumns )t where rn = 1 ......

SQLServer获取Excel中所有Sheet

E盘根目录新建一个Excel文件aa.xls后测试如下代码
use tempdb
go
if (object_id ('udf_getExcelTableNames' ) is not null )
    drop function dbo .udf_getExcelTableNames
go
create function udf_getExcelTableNames (@filename varchar (1000 ))
returns @t table (id int , name varchar ( ......

【改斜归正】 sqlserver sql 分页语句

      在Google上使用“sql 分页”关键字进行搜索,几乎所有的答案都是那三条。其二效率最高,其三使用游标,效率最差。
      下面是那三种方法 (插入代码没有sql选项)
方法1:
适用于 SQL Server 2000/2005
SELECT TOP 页大小 *
from table1
WHERE ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号