位置: 编程技术 - 正文

Sql 语句学习指南第1/2页(sql语句基础教程)

编辑:rootadmin
1.在查询结果中显示列名:   a.用as关键字:select name as '姓名' from students order by age   b.直接表示:select name '姓名' from students order by age   2.精确查找:   a.用in限定范围:select * from students where native in ('湖南', '四川')   b.between...and:select * from students where age between and   c.“=”:select * from students where name = '李山'   d.like:select * from students where name like '李%' (注意查询条件中有“%”,则说明是部分匹配,而且还有先后信息在里面,即查找以“李”开头的匹配项。所以若查询有“李”的所有对象,应该命令:'%李%';若是第二个字为李,则应为'_李%'或'_李'或'_李_'。)   e.[]匹配检查符:select * from courses where cno like '[AC]%' (表示或的关系,与"in(...)"类似,而且"[]"可以表示范围,如:select * from courses where cno like '[A-C]%')   3.对于时间类型变量的处理   a.smalldatetime:直接按照字符串处理的方式进行处理,例如: select * from students where birth > = '-1-1' and birth <= '--'   4.集函数   a.count()求和,如:select count(*) from students (求学生总人数)   b.avg(列)求平均,如:select avg(mark) from grades where cno='B2'   c.max(列)和min(列),求最大与最小   5.分组group   常用于统计时,如分组查总数:   select gender,count(sno)   from students   group by gender   (查看男女学生各有多少)   注意:从哪种角度分组就从哪列"group by"   对于多重分组,只需将分组规则罗列。比如查询各届各专业的男女同学人数,那么分组规则有:届别(grade)、专业(mno)和性别(gender),所以有"group by grade, mno, gender"   select grade, mno, gender, count(*)   from students   group by grade, mno, gender   通常group还和having联用,比如查询1门课以上不及格的学生,则按学号(sno)分类有:   select sno,count(*) from grades   where mark<   group by sno   having count(*)>1   6.UNION联合   合并查询结果,如:   SELECT * FROM students   WHERE name like ‘张%'   UNION [ALL]   SELECT * FROM students   WHERE name like ‘李%'   7.多表查询   a.内连接   select g.sno,s.name,c.coursename   from grades g JOIN students s ON g.sno=s.sno   JOIN courses c ON g.cno=c.cno   (注意可以引用别名)   b.外连接   b1.左连接   select courses.cno,max(coursename),count(sno)   from courses LEFT JOIN grades ON courses.cno=grades.cno   group by courses.cno   左连接特点:显示全部左边表中的所有项目,即使其中有些项中的数据未填写完全。   左外连接返回那些存在于左表而右表中却没有的行,再加上内连接的行。   b2.右连接   与左连接类似   b3.全连接   select sno,name,major   from students FULL JOIN majors ON students.mno=majors.mno   两边表中的内容全部显示   c.自身连接   select c1.cno,c1.coursename,c1.pno,c2.coursename   from courses c1,courses c2 where c1.pno=c2.cno   采用别名解决问题。   d.交叉连接   select lastname+firstname from lastname CROSS JOIN firstanme   相当于做笛卡儿积 8.嵌套查询   a.用关键字IN,如查询李山的同乡:   select * from students   where native in (select native from students where name=' 李山')   b.使用关键字EXIST,比如,下面两句是等价的:   select * from students   where sno in (select sno from grades where cno='B2')   select * from students where exists   (select * from grades where   grades.sno=students.sno AND cno='B2')   9.关于排序order   a.对于排序order,有两种方法:asc升序和desc降序   b.对于排序order,可以按照查询条件中的某项排列,而且这项可用数字表示,如:   select sno,count(*) ,avg(mark) from grades   group by sno   having avg(mark)>   order by 3   .其他   a.对于有空格的识别名称,应该用"[]"括住。   b.对于某列中没有数据的特定查询可以用null判断,如select sno,courseno from grades where mark IS NULL   c.注意区分在嵌套查询中使用的any与all的区别,any相当于逻辑运算“||”而all则相当于逻辑运算“&&”   d.注意在做否定意义的查询是小心进入陷阱:   如,没有选修‘B2'课程的学生 :   select students.*   from students, grades   where students.sno=grades.sno   AND grades.cno <> 'B2'   上面的查询方式是错误的,正确方式见下方:   select * from students   where not exists (select * from grades   where grades.sno=students.sno AND cno='B2')   .关于有难度多重嵌套查询的解决思想:   如,选修了全部课程的学生:   select *   from students   where not exists ( select *   from courses    where NOT EXISTS   (select *   from grades   where sno=students.sno   AND cno=courses.cno))

推荐整理分享Sql 语句学习指南第1/2页(sql语句基础教程),希望有所帮助,仅作参考,欢迎阅读内容。

Sql 语句学习指南第1/2页(sql语句基础教程)

文章相关热门搜索词:sql语言的相关知识,sql语句基础知识,sql语言的相关知识,sql语句的含义及功能,sql语句的含义及功能,sql语句的含义及功能,sql语句基础教程,sql语句的用法,内容如对您有帮助,希望把文章链接给更多的朋友!

.NET Framework SQL Server 数据提供程序连接池 您也可以提供几个连接字符串修饰符来控制连接池行为,请参见本主题内下文中使用连接字符串关键字控制连接池这一节。池的创建和分配当连接打开

对有自增长字段的表导入数据注意事项 对有自增长字段的表导入数据注意事项:1、把自增长字段暂时设置成非自增长的;导入数据成功后,再设置成自增长字段。2、导出、导入数据时,注

SQL Server导入、导出、备份数据方法 一、导出导入SQLServer里某个数据库1.在SQLServer企业管理器里选中要转移的数据库,按鼠标右键,选所有任务-备份数据库。2.备份选数据库-完全,目的备

标签: sql语句基础教程

本文链接地址:https://www.jiuchutong.com/biancheng/348758.html 转载请保留说明!

上一篇:MSSQL 清空数据库的方法(清空mysql数据库)

下一篇:.NET Framework SQL Server 数据提供程序连接池

  • 捐赠资产管理办法
  • 合同取得成本属于
  • 固定资产入账原值含税价吗
  • 什么是进口增值税率
  • 电子商务公司开业活动流程
  • 回单一定要在开户行打吗
  • 房产税城镇土地使用税减免政策
  • 个人非专利技术转让属于什么收入
  • 哪些类型的合同无效
  • 有现金折扣方式有哪些
  • 收到土地使用权转让金会计分录
  • 软件企业会计分录
  • 收到对方开的发票怎么做账
  • 个体没有地址怎么办理执照
  • 营业账簿印花税包括什么
  • 记账凭证汇总表和汇总记账凭证有什么区别
  • 外贸企业出口退税申报期限
  • 购买银行承兑汇票的会计分录
  • 收到投资者投入设备一台,价值100000元
  • 企业集团内部各所属单位之间
  • 主营业务收入会计分录怎样写
  • 机打发票验旧是什么意思
  • 民间非营利组织会计制度最新版
  • 企业收到利息收入开发票吗
  • mac如何连接电脑
  • 外贸企业出口货物
  • 跨年期许
  • excel表格怎么自制表格
  • macwifi配置
  • 怎么提升电脑速度
  • xp系统可以安装cad吗
  • 报销费用填制什么凭证
  • 递延所得税的计税基础
  • php set_time_limit
  • phpstudy8
  • 食堂现金管理办法
  • 商贸公司销售
  • node.js in action
  • vue pending
  • node.js解决跨域请求
  • 信息技术服务费税收编码
  • 产权转移数据印花
  • 库存商品用于研发要进项税额转出吗
  • 收到汽车会计分录
  • 织梦专题页模板
  • MyBatis MapperProvider MessageFormat拼接批量SQL语句执行报错的原因分析及解决办法
  • 购入已提足折旧的固定资产账务处理
  • 不同企业可以开专票吗
  • 房屋出租后转租缴纳房产税吗
  • 短期流动负债计算公式
  • 企业资产负债表怎么做
  • 清算申报在哪里报
  • 营业收入要包括什么
  • 研发费用中专利是什么
  • 新准则固定资产处置的账务处理
  • 公司帐户到银行怎么取钱
  • 实用的银行转账怎么转
  • u盘安装win8系统教程
  • 创建软链接 linux
  • windows与xp的区别
  • linux中使用fdisk命令进行硬盘分区
  • win8 升级 win10
  • mcshield.exe是什么进程
  • win7怎么样激活
  • jquery插件开发方法
  • jquery-easyui-1.3.3
  • 图片批量压缩到200k以下
  • jquery移动div到另一个div中
  • 耳机插头怎么拔
  • 批处理命令读取文件内容
  • jquery json对象
  • jquery过滤选择器按照过滤规则分类包括?
  • jquery入门
  • 用jquerymobile案例
  • 用python做一个贪吃蛇
  • 疯狂android讲义和第一行代码
  • jquery移动版
  • 个人所得税工资扣税标准
  • 湖北税票真伪查询
  • 江西发票税率
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设