zoukankan      html  css  js  c++  java
  • 数据库(二)

    SELECT语句基础
        1.查询指定列:SELECT关键字
        --语法:
        --SELECT <列名>,……  --希望查询列的名称
        --FROM <表名>       --指定选取数据的表
    
        --从Shohin中取 3 列
        SELECT shohin_id,shohin_mei,hanbai_tanka    --列的顺序可以任意指定,逗号(",")分隔,查询结果的顺序和 SELECT 子句中的顺序相同
        FROM Shohin;
    
        2.查询表的所有列:星号(*)
        --语法
        --SELECT *  --星号(*)代表所有列
        --FROM <表名>;
        【备注】使用星号(*)的话就无法设定列的显示顺序
    
        3.为列设定别名:AS关键字
        SELECT shohin_id AS Id,shohin_mei AS Name,shiire_tanka Price
        FROM Shohin;            --不用AS关键字也可以
    
        SELECT shohin_id AS "编号",shohin_mei AS '名称',shiire_tanka '价格'
        FROM Shohin;            --设定汉语别名:加上双引号(")或单引号(')
    
        4.常数的查询
        SELECT '产品' AS Product,
            38 AS Price,
            '2016-09-30' AS '生产日期'
            【备注】字符串和日期使用单引号(')。
    
        5.从结果中删除重复行:DISTINCT
            (1) SELECT DISTINCT shobin_bunrui FROM dbo.Shohin;
            (2) SELECT DISTINCT shiire_tanka FROM dbo.Shohin;   --DISTINCT 对 NULL 类型的处理:存在多条NULL值得行时,会结合为一条NULL数据。
            (3)多列之前使用DISTINCT
            SELECT DISTINCT shobin_bunrui,torokubi
            FROM dbo.Shohin
                --DISTINCT 会将多个列的数据进行组合,将重复的数据结合为一条。
                --【注意】DISTINCT关键字只能用在第一个列名之前。
    
        6.筛选记录:WHERE
            WHERE 子句中可以指定“某一列的值和这个字符串相等”或者“某一列的值大于这个数字”等条件,找出只符合该条件的记录。
            --语法:
            --SELECT <列名>,……
            --FROM <表名>
            --WHERE <条件表达式>;
    
            SELECT shohin_id,shohin_mei,shohin_bunrui
            FROM dbo.Shohin
            WHERE shohin_bunrui = '衣服';  --shouhin_bunrui = '':为条件表达式
            【备注】WHERE子句:首先通过该子句查询出符合指定条件的记录,再选取出SELECT语句指定的列
            【注意】SQL子句的书写格式是固定的,不能随意更改。如WHERE子句必须紧跟在FROM子句后。
    
        7.注释的写法
            --   单行注释
            /*
                多行
                注释
            */
    
    算法运算符和比较运算符
        1.算术运算符
        SELECT shobin_mei,hanbai_tanka,hanbai_tanka*2 AS 'hanbai_tanka_x2'
        FROM dbo.Shohin;
    
        2.比较运算符
        = <> >= > <= <
        --示例1:
        SELECT shohin_mei,shobin_bunrui
        FROM dbo.Shohin
        WHERE hanbai_tanka = 500;
        --示例2:
        SELECT shobin_mei,shohin_bunrui
        FROM dbo.Shohin
        WHERE hanbai_tanka <> 500;
        --示例3:
        SELECT shobin_mei,shobin_bunrui
        FROM dbo.Shohin
        WHERE hanbai_tanka != 500
        --示例4:
        SELECT *
        FROM dbo.shobin
        WHERE hanbai_tanka - shiire_tanka >=500;
    
        3.对字符串使用不等号的注意事项
        --DDL:创建表
        CREATE TABLE Chars
        (chr CHAR(3) NOT NULL,
        PRIMARY KEY (chr));
        --DML:插入数据
        INSERT INTO Chars VALUES ('1');
        INSERT INTO Chars VALUES ('2');
        INSERT INTO Chars VALUES ('3');
        INSERT INTO Chars VALUES ('10');
        INSERT INTO Chars VALUES ('11');
        INSERT INTO Chars VALUES ('222');
        --示例:选取出大于'2'的数据的SELECT语句
        SELECT *
        FROM dbo.Chars
        WHERE chr > '2';
        【注意】chr为字符串类型,对字符串类型的数据比较大小时,跟数字不一样。
    
    
        4.不能对NULL使用比较运算符
        --示例1:
        SELECT shohin_mei, shiire_tanka
        FROM dbo.Shohin
        WHERE shiire_tanka = NULL;        --错误的 SELECT 语句
    
        --示例2
        SELECT shohin_mei, shiire_tanka
        FROM dbo.Shohin
        WHERE shiire_tanka IS NULL;        --选取 NULL 的记录
    
        --示例3
        SELECT shohin_mei, shiire_tanka
        FROM dbo.Shohin
        WHERE shiire_tanka IS NOT NULL;    --选取不为 NULL 的记录
        【注意】希望选取NULL记录时,使用IS NULL;希望选取不是NULL的记录时,使用IS NOT NULL。
  • 相关阅读:
    获取android手机内所有图片
    进程、线程与任务程序之间的关系
    wife的简单使用(一个简单的例子)
    [转载]mode_t等系统数据类型
    双调欧几里得旅行商问题
    HDU OJ分类
    CLRS2.4__逆序对
    [转载] Android 2.3.3 API 读取通讯录中电话号码的实例
    [转]有关TinyXML使用的简单总结
    ARG_MAX问题
  • 原文地址:https://www.cnblogs.com/wzqstudy/p/10225776.html
Copyright © 2011-2022 走看看