入门级别的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. (一)JQuery动态加载js的三种方法

    Jquery动态加载js的三种方法如下: 第一种: $.getscript("test.js"); 例如: <script type="text/javascrip ...

  2. 团体程序设计天梯赛L2-023 图着色问题 2017-04-17 09:28 269人阅读 评论(0) 收藏

    L2-023. 图着色问题 时间限制 300 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 陈越 图着色问题是一个著名的NP完全问题.给定无向图 G ...

  3. Python入门基础学习 二

    Python入门基础学习 二 猜数字小游戏进阶版 修改建议: 猜错的时候程序可以给出提示,告诉用户猜测的数字偏大还是偏小: 没运行一次程序只能猜测一次,应该提供多次机会给用户猜测: 每次运行程序,答案 ...

  4. Android studio 报错 installation failed with message failed to finalize session:INSTALL_FAILED_INVALID_APK 解决方法

    解决方案: File->Setting->Build->Instant Run

  5. 一起学习《C#高级编程》3--运算符重载

    运算符的重载.C++的开发人员应该很熟悉这个概念,但这对Java 和 VB 开发人员确实全新的. 对于一些数值间的运算,如果通过方法来指定运算规则的话,不免会繁琐,这时就可以利用运算符的重载. 例: ...

  6. django系列7.2--django中的cookie和session基本操作,浏览器登陆验证的不同实现

    django中的cookie和session(02)–操作 一.Django中的cookie操作 ctrl + shift + del 是谷歌浏览器中清除页面缓存和cookie的快捷键 1.设置coo ...

  7. C指针 【温故】

    概念 1 指针也是一个变量,做为指针变量的值是另一个变量的地址.指针存放的内容是一个地址,该地址指向一块内存空间 其一般形式为: 类型说明符 *变量名: 其中,*表示这是一个指针变量,变量名即为定义的 ...

  8. kali linux之Audacity

    常用音频隐写工具 安装: sudo apt install audacity 初次打开的界面 看波的宽度分辨长短音 比较细的就是短音,代表".",比较粗的就是长音,代表" ...

  9. bzoj3435 [Wc2014]紫荆花之恋(动态点分治+替罪羊树)

    传送门(权限) 传送门(非权限) 题解 我终终终终终终于做出来啦!!! 作为一个没有学过替罪羊树的蒟蒻现场学了一下替罪羊树,作为一个平衡树都写数组版本的看着大佬的指针题解无语只能硬去理解然后照着抄了一 ...

  10. jvm学习笔记(一)

    一.java的运行原理 开发人员编写java代码(.java文件) 编译器将.java文件编译成字节码文件(.class文件) 字节码被装入内存,当字节码被装入内存之后,它就会被解释器解释执行或是被即 ...