1. 主流项目一般使用GUID做主键(uniqueidentifier,UUID)
2. 通配符:_ 代表通配1个字符,% 代表通配0-n个字符
3. 数据库中null表示不知道,而不是没有值;C#中表示空指针;
SQL中查询具有空置的记录,不能用等于:
错:select * from T_Employee
where FName = null; 即使有员工的FName字段为Null,但是任然查不出来记录。因为,数据库中 Null表示不知道,FName = null 判断一个姓名等于不知道的记录,那么结果也是不知道。
对:select * from T_Employee select * from T_Employee
where FName is null; where FName is not null;
这两个语句可以成功的查出数据库中FName为null的记录
4. where对原始数据进行过滤,而having只能放置分组后的过滤信息,能用的列和select中能用的列是一样的group by ... Having.......
5. Top限制结果集范围:嵌套查询表T_Employee中6—8条记录
select top 3 * from T_Employee
Where FNumber not in (select top 5 * from T_Employee
Where FNumber not in
Order by FSalary desc)
Order by FSalary desc
6. case函数用法
case expression
when value1 then returnvalue1
when value2 then returnvalue2
when value3 then returnvalue3
else defaultreturnvalue
end
例子 select
select FName,(case Flevel when 1 then '普通客户'
when 2 then '高级客户'
when 3 then 'VIP客户'
else '客户类型错误'
end) as FLevelName
From T_Customer