zoukankan      html  css  js  c++  java
  • 7-14 EXISTS子查询

    EXISTS:

    只注重于子查询是否有返回行,如果查有返回行返回结果为值,否则为假

    并不使用子查询的结果,仅用于测试子查询是否有返回结果。

    语法:

    IF EXISTS (子查询)

    BEGIN

    语句块

    END

    例子:

    IF EXISTS (SELECT *FROM  sysdatebases WHRER name="E_Market")
    DROP    DATEBASE  B_Market 
    GO
    CREATE   DATEBASE E_Market 
    {
    }
    GO
    

    如果数据库里面存在E_Market,那么为真,就会执行DROP DATEBASE  E_Market这一句话,否则为假。

    列题:

    一次性购买“数码产品”的数量操作3个的,消费金额打8折;

    根据已知项查询未知项:

    根据类别名称去查询类别编号:

    SELECT SortId   FROM  CommidSort WHERE  SortName='手机数码'
    

    根据类别的编号去查询商品的编号:

    SELECT CommId  FROM  CommidInfo WHRER ID=
    {
    SELECT SortId   FROM  CommidSort WHERE  SortName='手机数码'
    }  
    

    根据商品编号去查询订单表中购买数量超过3个的用户信息:

    SELCT *FROM OrderInfo WHERE SortID IN 
    {
    SELECT CommId  FROM  CommidInfo WHRER ID=
    {
    SELECT SortId   FROM  CommidSort WHERE  SortName='手机数码'
    }  
    }AND Amount >3
    

    购买超过3个的用户的付款金额打8折:

    对付款金额打8折:

    UPDATE  OrderInfo  SET PanMoney=panMoney*0.8
    WHRE Commid in
    {
    SELECT CommId  FROM  CommidInfo WHRER ID=
    {
    SELECT SortId   FROM  CommidSort WHERE  SortName='手机数码'
    } AND Amount>3 
    }
    

      

  • 相关阅读:
    maven
    sublime text
    ios category
    python
    activiti
    出版社
    gradle
    selenium
    spring
    Ansible状态管理
  • 原文地址:https://www.cnblogs.com/gcmwalker/p/6079182.html
Copyright © 2011-2022 走看看