sql server 2008语言基础: T-sql语言基础2简单技巧
--select * from Sales.Orders --where orderdate>='2007-06-01' and orderdate<'2007-07-01' --获得每个月的最后一天, 原理. 随意取一个有31天的月. 比如1月31 --然后加上一个月, 得到2月31. 实际上不存在这天, 应该是2月28或者29. --select DATEADD(MONTH, 1, '2012-03-31') --返回姓氏里面包含字母a两次或者更多次数的雇员. --select * from hr.Employees where lastname like '%a%a%' --返回总价格(数量乘以单价)大于10000的订单. --select orderid, sum(qty*unitprice) from sales.OrderDetails --group by orderid having sum(qty*unitprice)>10000 --返回2007年平均运费最高的三个发货国家 --select top 3 shipcountry, AVG(freight) from sales.Orders --where orderdate>='2007-1-1' and orderdate<'2008-1-1' --group by shipcountry order by AVG(freight) desc --为每个顾客单独根据订单日期的顺序(用orderid作为附加属性)来计算其订单的行号. --select custid, orderdate, orderid, --ROW_NUMBER() over(partition by custid order by orderdate) --from sales.Orders --排序. 空值null必须排在所有有值的数据之后. 默认是在所有之前的. select custid, region from Sales.Customers order by case when region is null then 1 else 0 end, region
本人在长沙, 有工作可以加我QQ4658276