--      Tips:查询基础

 --一、SELECT 语句基础

-- 1.查询指定列:SELECT 关键字

--语法:
--SELECT <列名>, ...     -- 希望查询列的名称
--FROM <表名>            -- 指定选取数据的表

-- 从 Conbio 中取 3 列
SELECT  Conbio_id,Conbio_name,Conbio_Varieties        -- 列的顺序可以任意指定,逗号(“,”)分隔,查询结果的顺序和 SELECT 子句中的顺序相同.
FROM Conbio;

 ------------------
 
 --2.查询表的所有列:星号(*)

--语法
--SELECT *        -- 星号(*)代表所有列
--FROM <表名>;

------------------

select *
from Conbio;

--【备注】使用星号(*)的话就无法设定列的显示顺序.

--------------------------------------

--3.为列设定别名:AS 关键字

SELECT Conbio_id AS Id, Conbio_name AS Name, Conbio_price1 Price1        -- 不用 AS 关键字也可以
FROM Conbio;    

 ------------------
 
SELECT Conbio_id AS "编号", Conbio_name AS '名称', Conbio_price1 '价格1'
FROM Conbio;    

-- 设定汉语别名:加上双引号(")或单引号(')

--------------------------------------

--4.常数的查询

SELECT '产品' AS Product,            -- '产品':字符串常数
    39 AS Price,                     -- 38:数字常数
    '2016-09-30' AS '生产日期'       -- '2016-09-30':日期常数

--【备注】字符串和日期使用单引号(')。

------------------

select * from            --查询表名为Conbio的表.
conbio;

--------------------------------------

-- 5.从结果中删除重复行:DISTINCT

--(1)
SELECT DISTINCT Conbio_Varieties FROM dbo.Conbio;        --移除重复

 ------------------
 
 --(2)DISTINCT 对 NULL 类型的处理:存在多条 NULL 值的行时,会结合为一条 NULL 数据。

SELECT DISTINCT conbio_price2 FROM dbo.conbio;

------------------

--(3)多列之前使用 DISTINCT

SELECT DISTINCT Conbio_price1, Conbio_date
FROM dbo.Conbio

--DISTINCT 会将多个列的数据进行组合,将重复的数据结合为一条。

--【注意】DISTINCT 关键字只能用在第一个列名之前。

 --------------------------------------
 
 --6.筛选记录:WHERE

-- WHERE 子句中可以指定“某一列的值和这个字符串相等”或者“某一列的值大于这个数字”等条件,找出只符合该条件的记录。

--语法:
--SELECT    <列名>, ...
--FROM      <表名>
--WHERE     <条件表达式>;

------------------
 
 select conbio_id,conbio_name,Conbio_Varieties
 from dbo.Conbio
 where Conbio_Varieties = '衣服';                --Conbio_Varieties='衣服';为条件表达式.
 
 --【备注】where 子句:首先通过该子句查询出符合指定条件的记录,再选取出select语句指定的列。
 --【注意】SQL 子句的书写格式是固定的,不能随意的更改。如where 子句必须紧跟在from子句后。
 
 --------------------------------------
 
 --7.注释的写法

--注释对于 SQL 的执行没有任何影响。

--  单行注释

/*
    多行注释
*/

--------------------------------------

--二、算术运算符和比较运算符

--  1.算术运算符

SELECT Conbio_name, Conbio_price1, Conbio_price2 * 2 AS 'Conbio_price1_x2'    --括号(“(”“)”)可以提高表达式的优先级。
FROM dbo.Conbio;

--------------------------------------

--2.需要注意 NULL

SELECT 5 + NULL, 10 - NULL, 1 * NULL, 4 / NULL, NULL / 9;

--【备注】所有包含 NULL 的计算,结果肯定为 NULL。

--------------------------------------

--3.比较运算符

--    比较运算符 运算符     含义
--    =     相等
--    <>     不等
--    >=     大于等于
--    >     大于
--    <=     小于等于
--    <     小于

--示例1:

SELECT Conbio_name, Conbio_Varieties
FROM dbo.Conbio
WHERE Conbio_price1 = 500;

------------------

--示例2
SELECT Conbio_name, Conbio_Varieties
FROM dbo.Conbio
WHERE Conbio_price1 <> 500;

------------------

--示例3
SELECT Conbio_name, Conbio_varieties
FROM dbo.Conbio
WHERE Conbio_Price1 != 500;

------------------

--示例4
select *
from dbo.Conbio
where Conbio_price1 - conbio_price2 >=500;

--------------------------------------

--3.对字符串使用不等号时的注意事项

--示例:选取出大于'2'的数据的 SELECT 语句

create Table Chars     --创建表名为chars的表
(
chr  varchar(20)     -- 设定列名为chr 类型varchar(20)
);
------------------

--插入值(自定义值)到表名为chars表中.

insert into chars values (1)
insert into chars values (10)
insert into Chars values (11)
insert into Chars values (2)
insert into Chars values (222)
insert into Chars values (3)

------------------

select * from Chars;            --查询名为chars的表

------------------

SELECT *
FROM dbo.Chars
WHERE chr > '2';

--【注意】chr 为字符串类型,对字符串类型的数据进行大小比较时,跟数字不一样。

--------------------------------------

--4.不能对 NULL 使用比较运算符

--示例1:
SELECT Conbio_name, Conbio_price2
FROM dbo.Conbio
WHERE Conbio_price2 = NULL;        --错误的 SELECT 语句

--【注意】希望选取 NULL 记录时,使用 IS NULL;希望选取,不是(不是)(不是) "NULL" 的记录时,使用 IS NOT NULL。

--示例2
SELECT Conbio_name, Conbio_price2
FROM dbo.Conbio
WHERE Conbio_price2 IS NULL;        --选取 NULL 的记录(无效的空值)

--示例3
SELECT Conbio_name, Conbio_price2
FROM dbo.Conbio
WHERE Conbio_price2 IS NOT NULL;    --选取不为 NULL 的记录(不为无效空值)

--------------------------------------

--三、逻辑运算符

--  1.NOT 运算符:取反

--示例:
SELECT *
FROM dbo.Conbio
WHERE NOT Conbio_price1 >= 1000;        --等价于 hanbai_tanka < 1000

--------------------------------------

--2.AND 运算符和 OR 运算符

--  AND 运算符:并且,在两侧的查询条件<都成立>时整个查询条件才成立。

--  OR 运算符:在两侧的查询条件就算<只有一个成立>时整个查询条件都成立。

--示例
SELECT Conbio_name, Conbio_price2
FROM dbo.Conbio
WHERE Conbio_Varieties = '厨房用具'
    AND Conbio_price1 >= 3000;

------------------

SELECT Conbio_name, Conbio_price2
FROM dbo.COnbio
WHERE Conbio_Varieties = '厨房用具'
    OR Conbio_price1 >= 3000;

--【备注】多个查询条件进行组合时,需要使用 AND 运算符或者 OR 运算符。

--------------------------------------

--2.通过括号进行强化

--示例1
SELECT Conbio_name,
    Conbio_Varieties,
    Conbio_date
FROM dbo.Conbio
WHERE Conbio_Varieties = '办公用品'
    AND Conbio_date = '2009-09-11'
    OR Conbio_date = '2009-09-20';

------------------

--示例2
SELECT Conbio_name,
    Conbio_Varieties,
    Conbio_date
FROM dbo.Conbio
WHERE Conbio_Varieties = '办公用品'
    AND (Conbio_date = '2009-09-11'
    OR Conbio_date = '2009-09-20');
    
  --【备注】AND 运算优先于 OR 运算,想要优先执行 OR 运算时可以使用括号。

--------------------------------------

--欢迎关注个人公众号:Zkcops

--2018/04/16  13:39 
 
由:zkcops 撰写(希望能对你有所帮助,转载注明出处!)
--------------------------------------

【SQL.基础构建-第二节(2/4)】的更多相关文章

  1. 【SQL.基础构建-第一节(1/4)】

    --        Tips:数据库与sql--    一.What's 数据库-- 1.数据库(Database,DB):将大量数据保存起来,通过计算机加工而成的可以进行高效访问的数据集合.--   ...

  2. 【SQL.基础构建-第四节(4/4)】

    --      Tips:数据更新 --一.插入数据 --1.INSERT 语句的基本语法 --语法:--INSERT INTO <表名>(列1, 列2, ...) VALUES (值1, ...

  3. Spark修炼之道(基础篇)——Linux大数据开发基础:第二节:Linux文件系统、文件夹(一)

    本节主要内容 怎样获取帮助文档 Linux文件系统简单介绍 文件夹操作 訪问权限 1. 怎样获取帮助文档 在实际工作过程其中,常常会忘记命令的使用方式.比如ls命令后面能够跟哪些參数,此时能够使用ma ...

  4. 【SQL.基础构建-第三节(3/4)】

    --      Tips:聚合和排序 --    一.对表进行聚合查询 -- 1.聚合函数 -- (1)5 个常用函数: -- ①COUNT:计算表中的记录(行)数. -- ②SUM:计算表中数值列的 ...

  5. 学习javascript基础知识系列第二节 - this用法

    通过一段代码学习javascript基础知识系列 第二节 - this用法 this是面向对象语言中的一个重要概念,在JAVA,C#等大型语言中,this固定指向运行时的当前对象.但是在javascr ...

  6. 第二节:Web前端-ASP.NET之C#基础

    第二节:Web前端-ASP.NET之C#基础 学习ASP.NET,要掌握学习语言,控件等技能, <div style="text-align: center; line-height: ...

  7. android内部培训视频_第二节 布局基础

    第二节:布局入门 一.线性布局 需要掌握的属性: 1.orientation:排列方式 vertical:垂直 Horizontal:水平 2.weight:水平布局的权重 3.gravity:子控件 ...

  8. CUDA:Supercomputing for the Masses (用于大量数据的超级计算)-第二节

    原文链接 第二节:第一个内核 Rob Farber 是西北太平洋国家实验室(Pacific Northwest National Laboratory)的高级科研人员.他在多个国家级的实验室进行大型并 ...

  9. SQL基础总结——20150730

           SQL SQL 指结构化查询语言 SQL 使我们有能力訪问数据库 SQL 是一种 ANSI(美国国家标准化组织) 的标准计算机语言 SQL 是一门 ANSI 的标准计算机语言.用来訪问和 ...

随机推荐

  1. 分布式代码管理系统GIT

    1.1Git安装 CentOS上   yum install -y epel-release; yum install git Ubuntu上    apt-get install git Windo ...

  2. shell死循环脚本示例

    1.设计一个脚本,监控远程的一台机器(假设ip为192.168.0.28)的存活状态,当发现宕机时发一封邮件给你自己. 提示:1. 你可以使用ping命令   ping -c10 www.baidu. ...

  3. web 表单提交按钮的测试点

    web表单中的提交按钮的测试点: 在提交前需要理解清楚的点: 1.表单中哪些字段是必填项 2.表单中字段内容的限制:非空.重复.长度.特殊字符,空格.以及一些和业务相关的约束条件 测试点: 1.是否支 ...

  4. Java基础笔记(1)----语言基础

    变量 变量:是内存中的一块存储空间,是存储数据的基本单元. 使用:先声明,后赋值,在使用. 声明:数据类型 + 变量名 = 值.(例:int a = 5:) 数据类型 分类:如图: 详解: Strin ...

  5. Linux下的指令:find,which

    1. 在Linux系统下,使用find来查找文件: find [path] [condition] [operation] path指定了在哪个目录查找,condition限定了查找条件,operat ...

  6. 项目Beta冲刺第二天

    1.昨天的困难,今天解决的进度,以及明天要做的事情 昨天的困难:昨天主要是在确认需求方面花了一些时间,后来终于确认了企业自查风险模块的需求问题 今天解决的进度:根据昨天确认下来的需求,我们基本上完成了 ...

  7. Linux 磁盘和文件管理系统 文件打包解压备份 VIM、VI编辑器

  8. [NOI2015]软件包管理器

    4621 [NOI2015]软件包管理器  题目等级 : 钻石 Diamond   题目描述 Description Linux用户和OSX用户一定对软件包管理器不会陌生.通过软件包管理器,你可以通过 ...

  9. React 深入系列2:组件分类

    文:徐超,<React进阶之路>作者 授权发布,转载请注明作者及出处 React 深入系列2:组件分类 React 深入系列,深入讲解了React中的重点概念.特性和模式等,旨在帮助大家加 ...

  10. zTree根据json选中节点,并且设置其他节点不可选

    首先,在适配目录树时,使用checkbox形式,配置代码如下: var settingCatalog = { check:{ enable: true }, data:{ simpleData:{ e ...