Android Studio 查询条件 android studio数据库查询语句_sql语句


本篇主要学习如何通过简单查询获取想要的数据。



  • 基本的查询语句

从数据库中查找数据时要使用select子句,select子句是sql中使用最多、最基本的子句。

子句是sql语句的组成要素,是以某一个关键字作为开始的语句。最简单的查询语句是由select和from这两个子句构成的:


/*
  select 查找列的名称
  from 从哪个表中查找
*/
select <列名1>,<列名2>,......
from <表名>


查询运行原理:在navicat客户端写查询语句向数据库发起查询,数据库查找后将结果返回。

(1)查询表student中的姓名和性别两列


Android Studio 查询条件 android studio数据库查询语句_sql语句_02


查询结果返回列的顺序和select子句中的顺序相同。

(2)查询表student 全部数据

查询全部数据的时候用“*”来实现。


Android Studio 查询条件 android studio数据库查询语句_android 数据库模糊查询语句_03


(3)为性别列设定别名

为了让查询结果更容易被理解,有时要为列设定别名,为列设定别名时用”as“,当别名是中文的时候要用英文单引号括起来。


Android Studio 查询条件 android studio数据库查询语句_sql语句_04


(4)distinct删除重复行

想要删除重复的行,可以在列名前加distinct来实现。


Android Studio 查询条件 android studio数据库查询语句_数据_05


distinct在多列之前是将多列数据进行组合,只有当这几列的数据都相同的时候才算作重复数据,distinct只能放在第一个列名的前面不能放在其他位置。


Android Studio 查询条件 android studio数据库查询语句_sql语句_06


  • 指定条件查询

通常情况下,我们在查询的时候是按照条件筛选出想要的数据。查询语句是通过where子句来指定查找条件的,但需要注意的是尽量避免where子句比较符号左侧出现表达式、函数等。

(1)找出姓名为猴子的学生


Android Studio 查询条件 android studio数据库查询语句_sql语句_07


注意:sql中子句的书写顺序是固定的,但运行顺序和书写顺序是不同的,select 子句最后运行,其他子句按书写顺序运行。

  • 注释

注释能够帮助阅读者更好的理解书写的sql语句。sql 语句有两种注释的方法,一种时单行注释,一种是多行注释。


-- 我是单行注释,单行注释“--”后要有空格
/*
我是
多行注释
*/


注意:sql语句中子句之间不能空行。

  • 运算符

运算符包括三种:分别是算术运算符、比较运算符和逻辑运算符。

算术运算符:+、-、*、/,如果有括号括号中的表达式优先运算,特别要注意的是所有含有null的运算结果都是null。

(1)用百分比显示成绩表中的成绩


Android Studio 查询条件 android studio数据库查询语句_Android Studio 查询条件_08


比较运算符:“=”等于、“<>”不等于、“>”大于、“>=”大于等于、“<”小于、“<=”小于等于,比较运算符可以和所有类型的值进行比较,字符串类型是按照字典序进行比较的。

(2)查找不及格的学生成绩


Android Studio 查询条件 android studio数据库查询语句_android 数据库模糊查询语句_09


(3)查找出生日期小于‘1990-01-01’的学生


Android Studio 查询条件 android studio数据库查询语句_sql语句_10


(3)查找任课老师为null的老师


Android Studio 查询条件 android studio数据库查询语句_数据库_11


(4)查找任课老师不是null 老师


Android Studio 查询条件 android studio数据库查询语句_sql语句_12


逻辑运算符:“not” 否定某一条件、“and”并且、“between”范围查找、“or”或者、“in”or的简单写法。

(5)选出成绩表中成绩在60-90的成绩的学生


Android Studio 查询条件 android studio数据库查询语句_Android Studio 查询条件_13


(6)查找出学生表中性别是'男'并且姓名是‘猴子’或者‘马云’的学生


Android Studio 查询条件 android studio数据库查询语句_数据库_14


(7)用between选出成绩表中成绩在60-90的成绩的学生


Android Studio 查询条件 android studio数据库查询语句_数据库_15


注意:

  1. between 查找出的值包含两个边界。
  2. 在实际使用中尽量避免使用in和not in,因为这样会导致数据库进行全表搜索,增加运行时间。
  3. 尽量避免使用or,or同样会导致数据库进行全表搜索。

(8)成绩表中成绩小于60或大于90的学生


Android Studio 查询条件 android studio数据库查询语句_数据_16


(9)查找姓名是'猴子'或'马云'的学生


Android Studio 查询条件 android studio数据库查询语句_android 数据库模糊查询语句_17


(10)查找姓名不是'猴子'也不是'马云'的学生


Android Studio 查询条件 android studio数据库查询语句_android 数据库模糊查询语句_18


  • 字符串模糊查询

sql语句用关键词like进行模糊查询,“%”表示查找任意的字符串,“_”下划线表示任意一个字符。

(1)查询姓‘猴’的学生


Android Studio 查询条件 android studio数据库查询语句_android 数据库模糊查询语句_19


(2)查询姓名中最后一个字是'子'结尾的学生


Android Studio 查询条件 android studio数据库查询语句_sql语句_20


(3)查询姓名有'思'的学生


Android Studio 查询条件 android studio数据库查询语句_数据_21


(4)查询姓名是三个字的姓‘王’的学生


Android Studio 查询条件 android studio数据库查询语句_android 数据库模糊查询语句_22


  • 练习题