入门级别的sql语句,“--”两条横线表示sql语句的注释

表:

id     name   age   height
2015102   老王   68    170.3
20150101  张三   null   null
20150102  小王   8     170.3
20150102  老王   68     170.3
20150102  老王   68     170.3
20150102  老王   68     170.3
20150102  老王   68     170.3
20150102  老王   68      170.3


-- 数据库(database):存储数据的仓库,
-- 数据库(database)--数据表(table)--列名(字段-field)--数据(值-value)
--创建表
--(在sqlite数据库中创建表的时候定义数据类型的起不来限制数据类型的作用的
--因为sqlite的数据的数据类型数弱类型,它会根据用户输入的数据进行自动的识别并添加
--到数据库表中,和大多数数据库一样,sqlite 是大小写不敏感的) -- sqlite 数据库中的五类数据类型:1、整数-integer 2、浮点数(小数)-real
-- 3、文本-text 4、二进制文件(图片、声音为典型代表)-blob 5、空类型-null
--
--
--CREATE TABLE 表名称
--(
--列名称1 数据类型,
--列名称2 数据类型,
--列名称3 数据类型,
--....
--)
-- 字段与字段直接用“,”号隔开,字段的一些属性用空格“ ”隔开,最后一个字段不要有“,”
create table person(
id integer not null,
name text,
age integer,
height real
) -- 删除表
drop table person --对数据库的操作无非就是CRUD
-- C:增加(增)-Create
-- R:读取(查)-Retrieve
-- U:更新(改)-Update
-- D:删除(删)-Delete --查:获取表中全部数据
select * from person --增:添加数据--文本类型要用双引号("")或者单引号('')括起来
--insert into 表 values (值1, 值2, 值3...)
-- 或者指定添加内容
-- insert into 表(字段1, 字段2, ...) values (值1, 值2, 值3...)
-- 注意:如果字段类型定义为数值型,如果插入了文本型,虽然不会报错,但是无法插入,显示的值可能为0
insert into person values(20150102, '老王', 68,170.3)
insert into person(id, name) values (20150101, '张三') --删:删除数据(不能删除某个数据)
--格式:delete from 表 where 。。。
--像MySQL还可以:delete * from 表 where 。。。(比sqlite多了个“*”)
-- 进行删除操作要谨慎,记得加上条件+加上条件+加上条件。否则会将整张表的数据删除
delete from person where id=20150102 -- 改:修改数据
-- update 表 set 列名称 = 新值 , 列名称=新值 。。。 where 列名称 = 某值
-- 记得修改的条件,如果你想修改这个表中改字段(列名称)的所有值为相同的话可以不加条件
update person set name='小王', age=8 where id=20150102 -- 查:查询数据(重点+难点)
-- 格式 select * from 表
-- 查询所有数据 :
select * from person
-- 使结果中不出现重复数据(例如id)
select distinct id from person
-- 模糊查询:%:所有字符;_单个字符
select * from person where name like'老_'
-- 排序:降序:order by 字段 desc 升序:order by 字段 desc
select * from person order by age desc
-- 统计 :总数count(*);最大值max(字段);最小值min(字段);avg(字段)
select max(age) from person
-- 选择前几项:limit 开始, 数量;不要加括号,开始下标从0开始,一般都是放在语句的最后面,也有用 top 数值 的
-- eg:获取前三条
select * from person limit 0,3
-- 分组 : group by 字段
-- eg: 统计不同id 的人数;相同字段的分为一组
select count(*) from person group by id
-- 比较 >, <, =, !=
select * from person where id=2015102
-- 在 。。 之间 :between 值1 and 值2,介于两个值之间的数据范围。这些值可以是数值、文本或者日期
select * from person where id between 201501 and 20151110 -- 包含 : 字段 in(值1,值2。。)
select * from person where id in(1001,1002,1003,20150101)

SQL语句——入门级的更多相关文章

  1. PostGIS 通过SQL语句实现空间分析【入门级】

    PostGIS是对象关系型数据库系统PostgreSQL的一个扩展,PostGIS提供如下空间信息服务功能:空间对象.空间索引.空间操作函数和空间操作符.同时,PostGIS遵循OpenGIS的规范. ...

  2. 1.4 数据库和常用SQL语句(正文)——MySQL数据库命令和SQL语句

    前面我们已经讲述了,登录时,我们使用mysql –u root –p命令进行,此时如果设置了密码,则需要输入密码. 输入密码后即进入MySQL的操作界面,此时,命令行窗体左侧显示"mysql ...

  3. mysql学习之 sql语句的技巧及优化

    一.sql中使用正则表达式 select name,email from user where email Regexp "@163[.,]com$"; sql语句中使用Regex ...

  4. 一条Sql语句分组排序并且限制显示的数据条数

    如果我想得到这样一个结果集:分组排序,并且每组限定记录集的数量,用一条SQL语句能办到吗? 比如说,我想找出学生期末考试中,每科的前3名,并按成绩排序,只用一条SQL语句,该怎么写? 表[TScore ...

  5. LINQ to SQL语句(7)之Exists/In/Any/All/Contains

    适用场景:用于判断集合中元素,进一步缩小范围. Any 说明:用于判断集合中是否有元素满足某一条件:不延迟.(若条件为空,则集合只要不为空就返回True,否则为False).有2种形式,分别为简单形式 ...

  6. Oracle ------ SQLDeveloper中SQL语句格式化快捷键

    Oracle SQL Developer中SQL语句格式化快捷键: 每次sql复制到SQL Developer面板的时候,格式老不对,而且看起来很不舒服,所有的sql都挤在一行完成. 这时我们可以全选 ...

  7. SQL语句优化

    (1)      选择最有效率的表名顺序 ( 只在基于规则的优化器中有效 ) : ORACLE 的解析器按照从右到左的顺序处理 FROM 子句中的表名, FROM 子句中写在最后的表 ( 基础表dri ...

  8. LinqToDB 源码分析——生成与执行SQL语句

    生成SQL语句的功能可以算是LinqToDB框架的最后一步.从上一章中我们可以知道处理完表达式树之后,相关生成SQL信息会被保存在一个叫SelectQuery类的实例.有了这个实例我们就可以生成对应的 ...

  9. 年终巨献 史上最全 ——LINQ to SQL语句

    LINQ to SQL语句(1)之Where 适用场景:实现过滤,查询等功能. 说明:与SQL命令中的Where作用相似,都是起到范围限定也就是过滤作用的,而判断条件就是它后面所接的子句.Where操 ...

随机推荐

  1. Poj2231 Moo Volume 2017-03-11 22:58 30人阅读 评论(0) 收藏

    Moo Volume Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 22104   Accepted: 6692 Descr ...

  2. java并发编程实战:第二章----线程安全性

    一个对象是否需要是线程安全的取决于它是否被多个线程访问. 当多个线程访问同一个可变状态量时如果没有使用正确的同步规则,就有可能出错.解决办法: 不在线程之间共享该变量 将状态变量修改为不可变的 在访问 ...

  3. 层层递进Struts1(五)之处理流程

    这篇博客我们深入Struts框架执行部分源码,从ActionServlet的process函数开始,看一下其内在的执行过程. 流程图 以下流程图展示的是ActionServlet和RequestPro ...

  4. C#基础入门 十

    C#基础入门 十 Windows应用程序的界面设计 Form.cs:窗体文件,一般用于存放程序员为窗体编写的代码: Form.Designer.cs:窗体设计文件,其中的代码是由VS自动生成的,一般不 ...

  5. Python学习-5.Python的变量与数据类型及字符串的分割与连接

    在Python中,变量类型是固定的,一旦声明就不能修改其类型(在Python里感觉不应该用声明,而应该用使用) 正确: var = 1 print(var) var = 2 print(var) 依次 ...

  6. ArcGIS(批量)删除属性字段

    ArcGIS下删除属性字段有两种方式:① 单个删除:② 批量删除. 单个删除 批量删除 尽管如此,ArcGIS桌面软件在属性字段的编辑上并不太方便,所以我们自己做了一些工具辅助平时的内业处理工作.(* ...

  7. 在 Docker 中部署 ASP.NET CORE 应用

    有了 Docker 之后, 部署起来却这间非常方便,环境不用搭了, 直接创建一个 microsoft/aspnetcore 的容器, 在本地开发好后, 把内容直接部署到容器中. 下面的命令是把本地发布 ...

  8. jsp页面都放在web-inf下面说是要防止用户直接访问jsp页面,为么不能直接访问jsp

    为了保护那部分jsp页面,如果没有登录验证,那部分jsp用户可以直接访问,这样很不安全,放在WEB-INF下面,就使得只能WEB-INF文件夹外jsp页面调用里面的jsp,这样来使用,就比如我们有一个 ...

  9. 在jquery中怎么使用css类名和id来获取元素?

    在jquery中,你可以很容易的使用CSS类名和id类获取元素. 例如: 1.ID:#id $('#idA')——选择id为idA的所有元素,不管元素的标签名如何. $('div#idA')——选择i ...

  10. [Java]java内存及数据区

    Java运行时的数据区包括:(其中前两个是线程共享的) 1.方法区(Method Area) 存储已被虚拟机加载的类信息.常量.静态变量.即时编译器编译后的代码等数据 2.堆(Heap) 存放对象实例 ...