MySql中一些常见的查询语句

一、单表查询

  1. 简单单表查询

    select *from member; //全部查询

    select user_name from member; //查询某一列

    select user_name,integral from member; //查询某两列

    select user_name.integral from member where integral>200;//查询integral中大于200的数据

    select user_name.integral from member where integral>=200;//查询integral中大于等于200的数据

    select user_name,integral from member where integral>=200 and integral <=1000000;//查询integral这一列中integral大于200小于100000的数据

    select user_name,integral from member WHERE integral BETWEEN 200 and 1000000;//查询integral这一列中integral大于200小于100000的数据

    注意:
    SELECT name,description,s_id from category where description>200 and s_id = 2 or s_id = 3;
    这条语句的执行顺序其实是
    SELECT name,description,s_id from category where (description>200 and s_id = 2) or s_id = 3;

    SELECT name,description,s_id from category where description>200 and( s_id = 2 or s_id = 3);
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    SELECT name,description,s_id from category where description is NULL; //查询description为null的数据,这里不能用SELECT name,description,s_id from category where description = NULL; 因为null不是指具体的数字。

    SELECT name,description,s_id from category where description is not NULL ; //查询description不为null的数据

  2. 模糊查询

    attention:%代表通配符 ,_代表占位符
    SELECT name,description,s_id from category where name like ‘%w%’;// 查询名字中含有w的数据,

    SELECT name,description,s_id from category where name like ‘w%’; //查寻名字中首字母为w的数据

    SELECT name,description,s_id from category where name like ‘_w%’; //查询第二个字母为w的数据

    SELECT name,description,s_id from category where name like ‘%w_’;//查询倒数第二个字母为w的数据

  3. 排序

    SELECT name,description,s_id from category ORDER BY name; //将查询到的数据进行排序

  4. 多表查询
    多表查询中的笛卡尔积现象:若两张表或多张表连接查询的时候没有条件限制,最终查询结果是两张表或多张表查询的乘积,这种现象叫做笛卡尔积现象。

    select e.ename,e.sal,s.grade from emp e join salgrade s on e.sal between s.losal and s.hisal;//查寻salgrade和emp表中的名字,薪水,薪水等级。

    内连接把一张表看做两张表用
    select a.ename,b.ename as leadername from emp a join emp b on a.mgr = b.empno; //一个表用了两次,且b.ename as leadername的意思是将ename的名字改为leadername。

    多表查询
    select d.dname , e.ename , b.ename as leadername , s.grade from emp e join dept d ON e.DEPTNO = d.deptno join emp b on e.MGR = b.empno join salgrade s on e.sal BETWEEN s.LOSAL and s.HISAL ORDER BY dname desc;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值