sql server简单的应用

AND or OR 这两个关键字来组装多个条件(表示并且,或者)
    
    属性名                      表名    找条件        找同时满足的        
SELECT column, another_column FROM mytable WHERE  num_wheels >= 4  AND doors <= 2 


数字类型的哈            
BETWEEN … AND …(NOT BETWEEN )     同一个属性在两个数之间     col_name BETWEEN 1.5 AND 10.5

IN (…)    (NOT IN)                       同一个属性在一个列表里           col_name IN (2, 4, 6)


在看看字符串的(模糊查询)


LIKE(NOT LIKE)    没有用通配符等价于 =                      col_name LIKE "ABC"
%     通配符,代表匹配0个以上的字符"%AT%" 代表AT 前后可以有任意字符              col_name LIKE "%AT%"
_    和% 相似,代表1个字符代表AT 前后可以有字符                               col_name LIKE "AN_"

IN (…)(NOT IN)                在列表                                    col_name IN ("A", "B", "C")

=========================
去重语法  DISTINCT  选取出唯一的结果的语法
SELECT DISTINCT(去重) column, another_column(属性名) FROM mytable  WHERE (条件);

 GROUP BY


=========================
排序语法 ORDER BY    ASC(升序)  DESC(降序)
SELECT column, another_column, … FROM mytable WHERE (条件) ORDER BY column ASC/DESC;


============================
LIMIT 和 OFFSET 结果集排序 LIMIT来指定只返回多少行,用 OFFSET来指定从哪一行开始返回

mySQL        
SELECT column, another_column, …  (元素)    
FROM mytable                       (表名)
WHERE condition(s)                (条件)
ORDER BY column ASC/DESC         (升序或者降序)    
LIMIT 10  OFFSET 200;             (从200条开始取10条数据)


SQL server
SELECT  TOP 10 column, another_column, …  (TOP表名要10条数据)(元素)    
FROM mytable                       (表名)
WHERE condition(s)                (条件)
ORDER BY column ASC/DESC         (升序或者降序)    

=================================================
表与表的关联查询
ON条件描述的关联关系;INNER JOIN 先将两个表数据连接到一起. 两个表中如果通过ID互相找不到的数据将会舍弃


用INNER JOIN 连接表的语法
SELECT column, another_table_column, …        (元素)
FROM mytable                     (主表)
INNER JOIN another_table             (要连接的表)
    ON mytable.id = another_table.id         (主键对应想象一下刚才讲的主键连接,两个相同的连成1条)
WHERE condition(s)
ORDER BY column, … ASC/DESC                                
LIMIT num_limit OFFSET num_offset;

======================================================
左连接LEFT JOIN,右连接RIGHT JOIN 和 全连接FULL JOIN(直接链接到一起没有的地方用null代替)

SELECT column, another_column, …                     (元素)
FROM mytable                        (主表)
INNER/LEFT/RIGHT/FULL JOIN another_table        (链接方式和要连接的表)
    ON mytable.id = another_table.matching_id        (主键对应想象一下刚才讲的主键连接,两个相同的连成1条)
WHERE condition(s)
ORDER BY column, … ASC/DESC
LIMIT num_limit OFFSET num_offset;

===========================================================

可以用IS NULL和 IS NOT NULL 来选在某个字段是否等于 NULL.


SELECT column, another_column, …
FROM mytable
WHERE column IS/IS NOT NULL
AND/OR another_condition
AND/OR …;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值