• MariaDB Combined Queries


    MariaDB Combined Queries

    (jlive)[crashcourse]>SELECT vend_id, prod_id, prod_price FROM products WHERE prod_price <= 5 OR vend_id IN (1001,1002);

    +---------+---------+------------+

    | vend_id | prod_id | prod_price |

    +---------+---------+------------+

      1001 | ANV01   |       5.99 |

      1001 | ANV02   |       9.99 |

      1001 | ANV03       14.99 |

      1002 | OL1     |       8.99 |

      1002 | FU1     |       3.42 |

      1003 | SLING   |       4.49 |

      1003 | TNT1    |       2.50 |

      1003 | FC      |       2.50 |

    +---------+---------+------------+

    8 rows in set (0.00 sec)


    (jlive)[crashcourse]>SELECT vend_id, prod_id, prod_price FROM products WHERE prod_price <= 5 UNION SELECT vend_id, prod_id, prod_price FROM products WHERE vend_id IN (1001,1002);

    +---------+---------+------------+

    | vend_id | prod_id | prod_price |

    +---------+---------+------------+

      1002 | FU1     |       3.42 |

      1003 | SLING   |       4.49 |

      1003 | TNT1    |       2.50 |

      1003 | FC      |       2.50 |

      1001 | ANV01   |       5.99 |

      1001 | ANV02   |       9.99 |

      1001 | ANV03       14.99 |

      1002 | OL1     |       8.99 |

    +---------+---------+------------+

    8 rows in set (0.00 sec)


    UNION只是将完整查询语句查询到的结果整合到了一起并会自动去除重复行,故上面的语句,不使用UNION也可以通过OR来实现,但如果是完完全全地UNION, OR就无法做到,如:

    (jlive)[crashcourse]>SELECT vend_id, prod_id, prod_price FROM products WHERE prod_price <= 5 UNION ALL SELECT vend_id, prod_id, prod_price FROM products WHERE vend_id IN (1001,1002);

    +---------+---------+------------+

    | vend_id | prod_id | prod_price |

    +---------+---------+------------+

      1002 | FU1     |       3.42 |

      1003 | SLING   |       4.49 |

      1003 | TNT1    |       2.50 |

      1003 | FC      |       2.50 |

      1001 | ANV01   |       5.99 |

      1001 | ANV02   |       9.99 |

      1001 | ANV03       14.99 |

      1002 | OL1     |       8.99 |

      1002 | FU1     |       3.42 |

    +---------+---------+------------+

     

    9 rows in set (0.00 sec)


    还可进行排序

    (jlive)[crashcourse]>SELECT vend_id, prod_id, prod_price FROM products WHERE prod_price <= 5 UNION SELECT vend_id, prod_id, prod_price FROM products WHERE vend_id IN (1001,1002) ORDER BY vend_id, prod_price DESC;

    +---------+---------+------------+

    | vend_id | prod_id | prod_price |

    +---------+---------+------------+

      1001 | ANV03       14.99 |

      1001 | ANV02   |       9.99 |

      1001 | ANV01   |       5.99 |

      1002 | OL1     |       8.99 |

      1002 | FU1     |       3.42 |

      1003 | SLING   |       4.49 |

      1003 | TNT1    |       2.50 |

      1003 | FC      |       2.50 |

    +---------+---------+------------+

     

    8 rows in set (0.15 sec)

  • 相关阅读:
    python面试题解析(python基础篇80题)
    python面试题
    网络IO模型 主要 IO多路复用
    线程队列 线程池 协程
    线程的Thread模块 同步控制:锁,事件,信号量,条件,定时器
    进程池,线程的理论,Threading.Thread来创建线程
    进程之间的通信(IPC),对列,管道,数据共享.进程池初识
    Process 进程之间的数据隔离问题,守护进程,锁,信号量,事件
    js get the local domain and path fast
    github jekyll blog
  • 原文地址:https://www.cnblogs.com/lixuebin/p/10814180.html
Copyright © 2020-2023  润新知