13-06-2015 SQL 笔记

1. 我经常把having和on搞混

The HAVING Clause

The HAVING clause was added to SQL because the WHERE keyword could not be used withaggregatefunctions.

Example:

SELECT column_name, aggregate_function(column_name)
FROM table_name
WHERE column_name operator value
GROUP BY column_name
HAVING aggregate_function(column_name) operator value;

注意到没有:having跟着aggregate function走的

SELECT Employees.LastName, COUNT(Orders.OrderID) AS NumberOfOrders FROM (Orders
INNER JOIN Employees
ON Orders.EmployeeID=Employees.EmployeeID)
GROUP BY LastName

HAVING COUNT(Orders.OrderID) > 10;


Keyword On

On代表join的条件

Example:

SELECT Orders.OrderID, Customers.CustomerName, Orders.OrderDate
FROM Orders
INNER JOIN Customers
ON Orders.CustomerID=Customers.CustomerID;


以下内容来自Beyond SQL Basics

2. Converting datatypes

Convert Int to String:

-- CONVERT( NEW DATA TYPE, COLUMN OR EXPRESSION)

Select fn + ' ' + sn + ' (' + convert(varchar(10), contactid) + ')' as Reference, * from tblcontacts


3. Create temporary table

--Create a Temporary Table

create table #sample(
contactid int,
firstName varchar(100)
lastName varchar(100)
displayName varchar(150),
dob smalldatetime
)

select * from #sample

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值