MYSQL查询表达方式

原创 2016年05月31日 15:09:33

查询

SELECT * FROM user;

SELECT user. * FROM user;

查询管理员编号和名称

SELECT id username*FROM user;

表来自哪个数据库下

SELECT id,username FROM user;

字段来自哪张表

SELECT cms_admin.id,cms_admin.username FROM cms.cms_admin;

给表名起别名

SELECT id,username FROM cms_admin AS a;
SELECT a.id,a.username FROM cms.cms_admin AS a;

给字段起别名

SELECT id AS ‘编号’,username AS ‘用户名’ FROM cms_admin;
SELECT a.id AS id1,a.username AS u FROM cmd_admin AS a;

WHERE 条件

查询编号为1的用户

SELECT id,username FROM cms_admin WHERE id=1;

查询编号不为1的用户

SELECT id,username FROM cms_admin WHERE id!=1;

添加age字段

ALTER TABLE cms_admin ADD age TINYINT UNSIGNED DEFAULT 18;
INSERT cms_admin(username,password,age)

VALUES(‘test’,’tes’,NULL);

查询表中记录age值为NULL

SELECT *FROM cms_admin WHERE age<=>NULL;

IS NULL 查询表中记录age值为NULL

SELECT *FROM cms_admin WHERE age IS NULL;
SELECT *FROM cms_admin WHERE age IS NOT NULL;#除了NULL以外的

查询编号3到10之间的用户

SELECT *FROM cms_admin WHERE id BETWEEN 3 AND 10;

查询编号为1,3,5的;( 忽略大小写)

SELECT * FROM cms_admin WHERE id IN(1,3,5);

模糊查询

%: 代表0个一个或者多个任意字符

_:代表1个任意字符

查询姓张的用户

SELECT *FROM cms_admin WHERE username LIKE ‘%张’;

查询用户名中包含in的用户

SELECT *FROM cms_admin WHERE username LIKE ‘%in%’;

查询用户名为3位的用户

SELECT *FROM cms_admin WHERE username LIKE ‘_‘;

用户名_i%

SELECT *FROM csm_admin WHERE username LIKE ‘_I%’;
查询用户名为king并且密码为king的用户名
SELECT *FROM csm_admin WHERE username=’king’ AND password=’king’;

查询编号大于3的变量年龄不为NULL的用户

SELECT *FROM smc_admin WHERE id>3 AND age IS NOT NULL;

查询编号大于3的变量年龄不为NULL 的用户并且proid为3

SELECT *FROM cms_admin WHERE id>3 AND age IS NOT NULL AND proid=3;

查询用户名为以张开始或者用户名所在的身份为2,4的记录

SELECT *FROM cms_admin WHERE username LIKE ‘张%’ OR proid IN(2,4);

按照用户所属的身份分组proid

SELECT *FROM cms_admin GROUP BY proid;

向用户表中添加性别字段

ALTER TABLE csm_admin ADD sex ENUM(‘男’,’女’,’保密’);
UPDATE cms_admin SET sex=’男’ WHERE id IN(1,2,3,4,5);
UPDATE cms_admin SET sex=’男’ WHERE id IN(6,7,8,9,10);
UPDATE cms_admin SET sex=’男’ WHERE id IN(11,12);

按照用户性别分组

SELECT *FROM cms_admin GROUP BY sex;

按照字段位置分组

SELECT *FROM cms_admin GROUP BY 8;#8指的是name的位置

按照多个字段分组

SELECT *FROM cms_admin GROUP BY sex,age;

查询编号大于3的用户按sex分组

SELECT *FROM cms_admin WHERE id>3 GROUP BY sex;

查询详情 ( GROUP_CONCAT(name) )

查询id,sex,用户名详细按照性别分组

SELECT id,sex,GROUP_CONCAT(username) FROM cms_admin GROUP BY sex;

查询prodi,性别详情,注册时间详情,用户名详情,按照proid分组

SELECT proid,GROUP_CONCAT(sex),GROUP_CONCAT(username),GROUP_CONCAT(time) FROM cms_admin GROUP BY proid;

查询编号,sex,用户名详情以及组中总人数按照sex分组

SELECT id,sex,GROUP_CONCAT(username) AS user1 ,COUNT(*) FROM totalUsers csm_admin GROUP BY sex;

统计表中所有记录

SELECT COUNT(*) AS totalusers FROM cms_admin;

COUNT(字段) 不统计NULL值;

SELECT COUNT(age) AS toltalUsers FROM csm_admin;

查询编号,性别,用户名详情,组中总人数,组中最大年龄,最小年龄,平均年龄,以及年龄总和

SELECT id,sex,GROUP_CONCAT(usrname),
COUNT(*) AS totalUsers,
MAX(age) AS max_age,
MIN(age) AS min_age,
AVG(age) AS avg_age,
SUM(age) AS sum_age
FROM cms_user
GROUP BY sex;

WITH ROLLUP 统计MAX,MIN,COUNT,等

SELECT id,sex,GROUP_CONCAT(usrname),
COUNT(*) AS totalUsers,
MAX(age) AS max_age,
MIN(age) AS min_age,
AVG(age) AS avg_age,
SUM(age) AS sum_age
FROM cms_user
GROUP BY sex WITH ROLLUP;

查询性别sex,用户名详情,组中总人数,最大年龄,年龄总和

SELECT sex,GROUP_CONCAT(username) AS users,
COUNT(*) AS totalUsers,
MAX(age) AS max_age,
SUM(age) AS sum_age
FROM coms_admin
GROUP BY sex;

查询组中人数大于2 的

SELECT sex,GROUP_CONCAT(username) AS users,
COUNT(*) AS totalUsers,
MAX(age) AS max_age,
SUM(age) AS sum_age
FROM coms_admin
GROUP BY sex
HAVING COUNT(*)>2;

查询组中人数大于2并且最大年龄大于60的

SELECT sex,GROUP_CONCAT(username) AS users,
COUNT(*) AS totalUsers,
MAX(age) AS max_age,
SUM(age) AS sum_age
FROM coms_admin
GROUP BY sex
HAVING COUNT(*)>2 AND MAX(age)>60;

按照ID降序排列DESC 默认的是ASC

SELECT *FROM cms_admin ORDER BY DESC;

按照年龄升序排列

SELECT *FROM csm_admin ORDER BY age ASC;
SELECT *FROM sma_admin ORDER BY 1 DESC;#1是指name的位置

按照年龄顺序,id降序排列

SELECT *FROM scm_admin ORDER BY age ASC,id DESC;

实现随机记录

SELECT *FROM cms_admin ORDER BY RAND();

查询表中前3条记录

SELECT *FROM csm_admin LIMIT 3;

查询表中的前一条几率

SELECT *FROM cms_admin LIMIT 0,1; #0是起始位置,1第几条

MySQL知识(十一)——使用正则表达式查询

MySQL数据查询之使用正则表达式查询
  • Zen99T
  • Zen99T
  • 2016年02月25日 13:54
  • 1729

MySql模糊查询like通配符与使用正则查询详细介绍

MySQL提供标准的SQL模式匹配,以及一种基于象Unix实用程序如vi、grep和sed的扩展正则表达式模式匹配的格式。 一、SQL模式 SQL的模式匹配允许你使用“_”匹配任何单个字符,而“%...
  • aa249856445
  • aa249856445
  • 2016年11月08日 10:49
  • 1524

[深入学习C#]LINQ查询表达式详解(1)——基本语法、使用扩展方法和Lambda表达式简化LINQ查询

简介  在Git上下载源码   在工程中我们少不了要定义类或者结构去储存数据,这些数据将被临时地储存在内存中,现在我们想要对其完成一些类似于查找、过滤等等常见的任务的时候,我们该如何去做呢?   ...
  • honantic
  • honantic
  • 2015年06月12日 15:56
  • 5048

一元钱硬币有多少种表达方式

  • 2011年07月18日 08:38
  • 878B
  • 下载

空间坐标系之间的旋转表达方式的相互转换

  • 2015年12月28日 10:59
  • 2KB
  • 下载

SOA技术架构下时序图的一种表达方式

一、时序图定义 时序图(Sequence Diagram),亦称为序列图或循序图,是一种UML行为图。它通过描述对象之间发送消息的时间顺序显示多个对象之间的动态协作。它可以表示用例的行为顺序,当执行...
  • xiaoyw
  • xiaoyw
  • 2013年11月11日 14:51
  • 1067

MyBatis中大于号以及小于号的表达方式

1.场景还原    在实际项目中,有很多需求需要通过设定一个具体的时间段来搜索或过滤所需的数据,今天笔者就mybatis中时间比较涉及到的大于,小于号的应用方法作个详尽的讲解。 2.实现方案 以...
  • zhangxing52077
  • zhangxing52077
  • 2017年07月08日 23:12
  • 1516

<模型汇总_9> 深度学习网络的表达方式汇总及模型分类方法

人的大脑会对眼睛捕捉到的外界事物进行逐级抽象,逐渐提取出抽象的语义信息,以便为人脑所理解。深度学习从这一科学发现得到启发,通过网络的权值来捕捉外界输入模式的特征,并且通过网络连接方式来组合这些特征从而...
  • lqfarmer
  • lqfarmer
  • 2017年05月18日 14:29
  • 629

中文字体在CSS中的表达方式

在写一个网站的样式表的时候,都会不可避免地用到一些中文字体,比如说微软雅黑、黑体等,除非是做英文站,或者说你乐意整站都用浏览器默认的字体,那我也算服了U。在 CSS 中写入中文字体的方法一般采用 fo...
  • namepan1985
  • namepan1985
  • 2012年11月22日 16:48
  • 221

cin与getline 和 八进制数的表达方式

转自:http://hi.baidu.com/05104106/blog/item/7b7e8a77c68b5b13b151b9f2.html cin.get()与cin.getline()区别在于前...
  • gukesdo
  • gukesdo
  • 2012年03月28日 13:36
  • 729
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:MYSQL查询表达方式
举报原因:
原因补充:

(最多只允许输入30个字)