数据库一些常用的SQL语句
1.多表连接查询:
假设现在有三个表,One,Two,Three;
One表字段:Code(主键),Name
Two表字段:Birthday,T_code(One表Code的外键)
Three表字段:Sex,Age,Th_bir(Two表Birthday外键)
(1)查询Code,Name,Birthday,Sex,Age:
select One.Code,Name,Two.Birthday,Three.Sex,Age from Two join One on One.Code=Two.T_code
join Three on Two.Birthday=Three.Th_bir
多表连接查询时将与所有表有主外键关系的表当做查找的表,join关联的表,on 关联的字段,如上面的例子,如果以Two表数据为主,过滤其他表中多余的数据,
可以用Left join ,以左边主要查询的表为主,如果要以后面的表的数据为主,可以用right join
(2)过滤掉重复的条件distinct:
distinct:可以自动过滤到多余的条件,此方法仅用于去重复,可以用作单独条件查询,普通全表查询慎用,他会将表中所有有重复的数据过滤掉,以免造成查询数据不完整
用法:select distinct 查询的字段 from 表格
(3)数据转换,如果Three表中Sex字段存的是0和1,现在查询这个表,将0显示男,1显示女,case when then end查询方式
用法1:select Age,case Sex when 0 then '男' when 1 then '女' end as Sex from Three
用法2:select Age,case when Sex=0 then '男' when Sex=1 then '女' end as Sex from Three
case 后面是要转换的字段,when后面是这个字段在数据库所存的信息,满足when的条件就执行then,将要改为的数据放在then后面,多条件最后条件也可以用else,
最后end结束,as是转换这个字段查询出来的显示,也就是用这个方法查完数据Sex列名将显示一长串字符,as可以转换为自己定义的,一般还是转换为原字段名称,以免在
开发程序操作数据库时出错
2.截取字符串
如果在开发中遇到需要操作一个字段,只需要这个字段数据的一部分,而不是全部,可以用字符串截取方式(substr(字段名,从哪一位截取,到哪一位))
例:现在有一个人员信息表(Information),其中一列(birth)存的是出生年月xxxx-xx-xx的形式,现在要查找出生年份是1993年的所有用户信息
select substr(birth,0,4) from Information,这是将所有的信息年份截取出来,显示出生年月这一列的所有年份
select * from Information where substr(birth,0,4) ='1993' 这是查询年份为1993的所有人员信息
同理,修改也可以用这个作条件,将所有5月份生日的人的性别(sex)改为先生:
Update Information set sex='先生' where substr(birth,6,7)='05'
删除也可以,将所有1992年6月份生日的人删除:delete from Information where substr(birth,0,7)='1992-06'
数据库一些常用的SQL语句的更多相关文章
- 面试、笔试中常用的SQL语句(数据库知识必杀)一共50个!!!
Student(S#,Sname,Sage,Ssex) 学生表 Course(C#,Cname,T#) 课程表 SC(S#,C#,score) 成绩表 Teacher(T#,Tname) 教师表 ...
- Oracle数据库常用的Sql语句整理
Oracle数据库常用的Sql语句整理 查看当前用户的缺省表空间 : select username,default_tablespace from user_users; 2.查看用户下所有的表 : ...
- MySQL 常用的sql语句小结(待续)
mysql 常用的sql语句 1.查看数据库各个表中的记录数 USE information_schema; SELECT table_name,table_rows FROM tables WHER ...
- 经典SQL语句大全以及50个常用的sql语句
经典SQL语句大全 一.基础 1.说明:创建数据库CREATE DATABASE database-name 2.说明:删除数据库drop database dbname3.说明:备份sql serv ...
- SQL之50个常用的SQL语句
50个常用的sql语句 Student(S#,Sname,Sage,Ssex) 学生表 Course(C#,Cname,T#) 课程表 SC(S#,C#,score) 成绩表 Teacher(T#,T ...
- 第五篇、常用的SQL语句和函数介绍
简介: 在使用到sqlite3的时候,常常需要写一些SQL语句,现将常用到的部分语句稍微总结以下,由于个人习惯,关键字用大写. 附: /*简单约束*/ CREATE TABLE IF NOT EXIS ...
- MySQL的一些常用的SQL语句整理
安装MySQL有两种的方式,一种是解压版本,但是需要配置环境变量,相对而言比较麻烦.所以我们一般采取第二种方式,那就是到MySQL的官网上下载安装版.这样就会省去很多麻烦,在这里我就不再详细的介绍具体 ...
- 50个常用的sql语句
50个常用的sql语句 Student(S#,Sname,Sage,Ssex) 学生表 Course(C#,Cname,T#) 课程表 SC(S#,C#,score) 成绩表 Teacher(T#,T ...
- 常用经典SQL语句大全完整版--详解+实例 (存)
常用经典SQL语句大全完整版--详解+实例 转 傻豆儿的博客 http://blog.sina.com.cn/shadou2012 http://blog.sina.com.cn/s/blog_84 ...
随机推荐
- 作品-网站 - [二次开发] 广联达BIM
客户地区:北京 基于帝国ECMS二次开发 网址:http://bim.glodon.com 开发性质:二次开发 网站类型:企业级
- 【OpenCV】视频取坐标
今天实现了视频播放以后暂停获取鼠标点击处坐标的功能. #include <iostream> #include <opencv2/highgui/highgui.hpp> #i ...
- PlayerPrefs游戏存档
本地存储.相当于Flash里面的SharedObject. Android位置:机器自身存储的(非扩展卡)/data/data/appname/shared_prefs/{AppName}.xml,如 ...
- winform窗体之间通过 windows API SendMessage函数传值
-----------------------------------------------------------‘接收窗体’代码.cs------------------------------ ...
- 串口 COM口 TTL RS-232 RS-485 区别 释疑
Point: 1.串口.COM口是指的物理接口形式(硬件).而TTL.RS-232.RS-485是指的电平标准(电信号). 2.接设备的时候,一般只接GND RX TX.不会接Vcc或者+3.3v的电 ...
- load mainaccount
static void LoadMainAccountCSV(Args _args) { /* SysExcelApplication excel; SysExcelWorkbooks ...
- 6410实现网卡(DM9000A)收发功能及ARP协议实现
1. 网卡硬件结构(DM9000A) 网卡的实质就是MAC通过MII接口控制PHY的过程. MAC主要负责数据帧的构建.数据差错检查.传送控制等. PHY是物理接口收发器,属于物理层,当它收到MAC过 ...
- 针对APP的测试过程和重点关注内容,做以下梳理和总结
转载自金阳光测试:http://blog.sina.com.cn/s/blog_12df1b9e60102vy57.html 1. 首先是测试资源确认及准备 (1)产品需求文档.产品原型图.接口说 ...
- 跨域访问CORS
由于现代浏览器的同源策略,合理的跨域请求也变得至关重要. CORS(Cross-Origin Resource Sharing,跨域资源共享)定义了在必须访问跨域资源时,浏览器与服务器应该如何沟通.它 ...
- bash profile .bashrc
/etc/profile:此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行. 并从/etc/profile.d目录的配置文件中搜集shell的设置. /etc/bashrc:为每一 ...