黑马程序员-第四季sql一些基础笔记

 ------- android培训java培训、期待与您交流! ---------

sql里面的一些数据类型

bit类型就相当于c#中的boo了类型在数据库里面只有两种值一个是0一个是1

char10)表示长度是10的一个字符

varchar50)长度50的字符

nvarchar50)可以书写一些中文或者日文的字符在这里面比如就可以写一些名字什么的

sql语句中字符串用单引号引起来

Sq了语言分为ddl语言:数据定义语言。例如creat table还有drop table

dml语言:数据操作语言。例如select  insert  update delete等。

Sql一般选用两种类型作为主键一个是int 一个是uniqueidentifier作为主键。主要是这两种

Id一般在数据库中被设为主键,另外标识规范设为是,另外要注意一个表只有一个标识规范

Int自增字段的优点:占用的空间小,无需开发人员的干预,易读:缺点:效率低,数据导入导出的时候很痛苦

Guid的优点:效率高,数据导入导出方便,缺点:占用的空间大,不易读

业界主流倾向于用guid

insert into person2(name,name1)values('xulu','nihao');

insert into person3(id,name,name1)values(newid(),'xulu','nihao');

delete 用于删除数据,而drop table用于把整个表给删除掉包括里面的所有数据。

Sql聚合函数:max(最大值)min(最小值)avg(平均值)sum(和)count(数量)

大于25岁的员工的最高工资

Select max(fsalary) from person1 where age>25

最对工资和最高工资 select min(fsalary),max(fsalary) from person1

排序 order by  asc 升序排序 order by  desc 降序排序

Order by语句要放在where语句之后使用。

Group by语句要放在where语句之后使用。

没有出现在group by字句中的列是不能放在select 语句后的列名列表中的(聚合的函数式可以的)

比如错误 select fage,fsalary from person1 group by fage这一句是错误的语句

正确:select fage,max(fsalary) from person1 group by fage 这一句的语法是正确的。

聚合函数是不能出现在where的语句中的,聚合函数有count()max()min()avg()sum()等

Having 放在group by语句之后使用,并且having是对分组后信息的过滤,能用的列和select中能用的列是一样的。

Getdate():去的当前日期时间

Dateadd(datepart,number,date)计算增加以后的日期

参数date为带计算的日期,number为增量,datepart为计量的单位,可选值见备注dateaddday3date)计算日期为date3天以后的日期。

Datediffdatepart,startdate,enddate:计算两个日期之间的差数,datepart为计量单位,startdate为开始日期,enddate为结束日期

Datepartdatepartdate):返回日期的特定部分。

Cast’123’as int)把’123’的字符串变成了int类型。

Convert(int,’123’)’123’的字符串变成了int类型

这是sql里面的两种数据转换的方法。

练习表中有abc三列值,用sql语句实现:当a>b时选择a列的值,否则选择b,当b>c列是选择b列否则选择c

Select

(

Case

When a>b then a

Else b

end

),

(

Case

When b>c then b

Else c

end

)

From t

使用索引能提高查询效率,但是索引也是占据空间的,而且添加、更新、删除数据的时候也要同步更新索引,因此会降低insert update delete 的速度,所以只在经常检索的字段上创建索引。

子查询:把一个查询结果当做语句供给其他sql语句使用

 

-------- Windows Phone 7手机开发.Net培训、期待与您交流! -------

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值