SQL基础语法的单表操作 select|insert|update|delete(增删改查) 简单使用
以下案列以此表举例
1、select(查询)
select简单的查询分为两种
注:字段也就是表结构中的列的名称
第一种:
select 字段名 from 表名
此种查询只列出你所需要查询的字段,要查询多个字段以“,”隔开

第二种:
select * from 表名
* 的意思是查询出此表的所有字段

额外的内容:distinct关键字
select distinct 字段名 from 表名
给查询的结果去重
2、insert(插入)
insert插入数据行(记录)的两种简单实现方式
第一种:
insert into 表名 values(值1,值2...)

这种插入数据行的的值必须与表的字段名一一对应,否则数据会插入失败给出错误提示:
错误提示:Column count doesn't match value count at row 1
第二种:
insert into 表名(字段名,字段名...) values(值1,值2...)
显而易见,这是指定字段名来插入数据
3、update(更新(修改))
语法:
update 表名 set 字段名 = 新值 where 字段名 = 旧值

where 后面接条件,条件有多种多样,后面我会一一说明。在这里where的意思就是我要修改这个字段名下的这个旧值,新值写在set后面
4、delete(删除)
语法:
delete from 表名 where 字段名 = 值

根据字段名找到值的这一行记录就被删除了
where(重点,条件语句)
如果你的语句中有条件,则在语句末尾加上where,再跟上你的条件。例如:
select * from 表名 where 字段名 = 值
delete from 表名 where 字段名 = 值
=, >, <, >=, <=, <>(不等于)都适用于where
where用法极其丰富,后面我会一一讲解,这里暂时给点简单的例子
and 和 or(运算符)
and类似于java(不仅仅java)运算符的 &(与), or类似于 | (或) 。
AND 和 OR 可在 WHERE 子语句中把两个或多个条件结合起来
and例子:
select * from 表名 where 条件1 and 条件2

查询列出满足条件1和条件2的结果
or例子:
select * from 表名 where 条件1 or 条件2

查询列出满足条件1或者条件2的结果(满足其中一的都列出来)
order by(排序)
对结果进行排序
order by 写在语句最后面,给结果集排序。
order by 列子:
select 字段1,字段2 from 表名 order by 字段1 desc, 字段2 asc
order by asc 升序 查询出的结果升序
可以没有order by 后面的关键字,那样就默认asc(升序)

order by desc 降序 结果降序

用法大同小异,多种结果也可以多种排序,用","隔开
limit(规定返回的数目)
注意:mySQL使用的是limit来规定返回的数目,Oracle的语法是不一样的
在你的select语句后面加上它,可以指定你查询结果的记录的条数
列子1:
select * from 表名 limit 2

查询列出这张表的前2行的记录
like与通配符
首先我们要知道什么是通配符,以下就是sql中使用的通配符,但必须和like一起使用
% 替代一个或多个字符
_ 只代替一个字符
[charlist] 在字符列中的任何单一字符
[^charlist]
等价于
[!charlist] 不在字符列中的任何单一字符
%通配符:
select * from 表名 where 字段名 like 'xx%'

查询列出此字段以xx开头的记录
select * from 表名 where 字段名 like '%xx%'

查询列出此字段包含xx的记录
_:
select * from 表名 where 字段名 like '_xx'

查询列出此字段先以一个任意字符开头,后面为xx的记录
select * from 表名 where 字段名 like '_x_x_'

查询列出此字段先以一个任意字符开头,后面为x,又接一个任意字符,又接一个x,再接一个任意字符的记录
[charlist]:
select * from 表名 where 字段名 regexp '[abc]%'

查询列出此字段以a或b或c开头的记录,这里没用到 like 关键字,是因为mysql的语法用regexp(正则表达式)代替了
[!charlist]:
select * from 表名 where 字段名 like '[!abc]%'
查询列出此字段不以a或b或c开头的记录
in
前面我们可以根据具体的字段来查询记录比如:
where 字段名 in 值
where 字段名 in (值1,值2,值3....)

有了in我们可以规定多个值
between
BETWEEN ... AND 会选取介于两个值之间的数据范围。这些值可以是数值、文本或者日期
select * from 表名 where 字段名 between 左范围 and 右范围

这里提个醒,mysql的between语法的查询结果会包含左范围和右范围,也就是>=和<=,其他的数据库可能会有别的变动,在这里我只用mysql举例
SQL基础语法的单表操作 select|insert|update|delete(增删改查) 简单使用的更多相关文章
- SQL基础语法select|insert|update|delete(增删改查) 简单使用
以下案列以此表举例 1.select(查询) select简单的查询分为两种 注:字段也就是表结构中的列的名称 第一种: select 字段名 from 表名 此种查询只列出你所需要查询的字段, ...
- SQL基础--查询之一--单表查询
SQL基础--查询之一--单表查询
- C# 数据操作系列 - 12 NHibernate的增删改查
0. 前言 上一篇<C# 数据操作系列 - 11 NHibernate 配置和结构介绍> 介绍了Nhibernate里的配置内容.这一篇将带领大家了解一下如何使用NHIbernate.之前 ...
- 设置Sql server用户对表、视图、存储过程、架构的增删改查权限
根据数据库Schema限制用户对数据库的操作行为 授予Shema dbo下对象的定义权限给某个用户(也就是说该用户可以修改架构dbo下所有表/视图/存储过程/函数的结构) use [Your DB N ...
- C#在winform中操作数据库,实现数据增删改查
1.前言: 运行环境:VS2013+SQL2008+Windows10 程序界面预览: 使用的主要控件:dataGridview和menuStrip等. 2.功能具体介绍: 1.首先,我们要先实现基本 ...
- mybatis select/insert/update/delete
这里做了比较清晰的解释: http://mybatis.github.io/mybatis-3/java-api.html SqlSession As mentioned above, the Sql ...
- Hibernate3回顾-5-简单介绍Hibernate session对数据的增删改查
5. Hibernate对数据的增删改查 5.1Hibernate加载数据 两种:get().load() 一. Session.get(Class arg0, Serializable arg1)方 ...
- SQL进阶语法的多表操作
AS别名 多张表联合操作,如果表多,字段名长,不方便阅读.这里我们可以使用 as 关键字来对字段名设置别名. as也可以省略,看个人喜好,在这里我还是支持把 as 写上,这样我们在面对复杂的SQL ...
- SQL 基础语法(创建表空间、用户、并授予权限、数据的增删改查) --(学习笔记)[转]
--创建表空间 名:lyayzh_test create tablespace lyayzh_test --创建表数据文件 名:lyayzh_test_data.dbf 必须以dbf为后缀 dataf ...
随机推荐
- Android开发问题积累 <加载在线Gif><WebView无法加载网页图片>
在线Gif加载 解决办法 Glide完美解决 Glide.with(context).load(pic).placeholder(R.drawable.loading).into(imageView) ...
- R中字符串操作
简介 Stringr中包含3个主要的函数族 字符操作 空格处理 模式匹配 常用函数 在平常的数据分析工作中,经常要用到如下的函数 函数 操作 str_length() 获取字符串长度 str_sub( ...
- CCSUOJ评测系统——第三次scrum冲刺
1.小组成员 舒 溢 许嘉荣 唐 浩 黄欣欣 廖帅元 刘洋江 薛思汝 2.个人在小组第三次冲刺的任务及其完成情况描述. 本人在小组第三次冲刺的任务是负责代码的编写,其他人提需求和改进,代码是采用Git ...
- Python爬虫实战---抓取图书馆借阅信息
Python爬虫实战---抓取图书馆借阅信息 原创作品,引用请表明出处:Python爬虫实战---抓取图书馆借阅信息 前段时间在图书馆借了很多书,借得多了就容易忘记每本书的应还日期,老是担心自己会违约 ...
- c# 托管和非托管的介绍
在.net 编程环境中,系统的资源分为托管资源和非托管资源. 对于托管的资源的回收工作,是不需要人工干预回收的,而且你也无法干预他们的回收,所能够做的 只是了解.net CLR如何做这些操作.也就是说 ...
- 解决tableView中cell动态加载控件的重用问题
解决tableView中cell动态加载控件的重用问题 tableView的cell,有时候需要在运行时取得对应的数据后才能够动态的创建该cell中的控件并加载到该cell中,此时,你一定会遇到重用问 ...
- 如何在ScrollView滑动的瞬间禁用拖拽手势
如何在ScrollView滑动的瞬间禁用拖拽手势 效果: 在UIScrollView滑动的瞬间禁用pan手势,可以防止用户按着屏幕不放后导致出现的一些莫须有的bug. // // ViewContro ...
- 解析苹果的官方例子LazyTableImages实现图片懒加载原理
解析苹果的官方例子LazyTableImages实现图片懒加载原理 首先在官网下载源码: https://developer.apple.com/library/ios/navigation/#sec ...
- Maven构建时跳过部分测试
当遇到以下场景: 其他人写的单元测试影响统计结果 一些需要调用外部接口的测试暂不运行 需要在非本机环境上运行一些不回滚的单元测试 则有必要选择以下方法跳过部分测试. 在测试用例前加上注解 @Ignor ...
- windows 查看端口号,杀进程
查看端口号: 开始--运行--cmd netstat –and 杀进程: windows任务管理器 查看--显示列-PID 相关知识: 一台机器的80端口被httpd (apache) ...

