梳理mysql
where name is null; WHERE id=101 OR id=102 AND price >10; 理解为id=101 或者id=102且price>10 AND优先OR 通配符_只匹配单个字符 WHERE name REGEXP 'abc' 正则表达式 name包含abc的行 REGEXP '.abc' .匹配任何一个字符 REGEXP '^abc$' 等同LIKE 'abc' 匹配整个列 REGEXP BINARY 'aBc' BINARY用来区分大小写 REGEXP '103|105' 类似于OR操作 REGEXP '[678] A' 匹配 6A或7A或8A []匹配几个字符之一 REGEXP '[^678]' 匹配几个字符之外的字符 REGEXP '[3-6]' '[A-Z]' 匹配范围 REGEXP '\\-' '\\.' 前导\\ 匹配特殊字符 \\f换页 \\n换行 \\r回车 \\t制表 \\v纵向制表 REGEXP '[:alpha:]' 预定义字符集 匹配任意字符 元字符 * 0或多 + 1或多 ? 0或1 {n}指定数目 {n,}不少于n {n,m}范围不超255 REGEXP '[[:digit:]]{4}' 匹配4个连续数字 定位符 ^开头 $结尾 ^双重作用 '^[ab]' 开头 '[^ab]'否定 SELECT '1356' REGEXP '[25]' 用SELECT测试REGEXP SELECT concat(name, ' (', value, ')' ) 合并列name (value) RTRIM() LTRIM() TRIM()去掉空格 SELECT val_a*val_b AS val_c 运算 UPPER() 大写 LOWER() 小写 LENGTH() 长度 DATE(order_time) 取日期部分 WHERE YEAR(order)=2005 AND MONTH(order)=9 RAND() 随机数 AVG() 平均数 SELECT AVG(DISTINCT price) SELECT COUNT(*) AS num, MAX(price) AS max SELECT id, COUNT(*) FROM tablea GROUP BY id 按id分组 顺序 WHERE, GROUP BY, ORDER BY HAVING类似WHERE 用于分组过滤 SELECT id, COUNT(*) FROM tablea GROUP BY id HAVING COUNT(*) >= 2 FROM TABLEA, TABLEB == FROM TABLEA INNER JOIN TABLEB ON SELECT * FROM t1 LEFT JOIN (t2, t3, t4) ON (t2.a=t1.a AND t3.b=t1.b AND t4.c=t1.c) 相当于 SELECT * FROM t1 LEFT JOIN (t2 CROSS JOIN t3 CROSS JOIN t4) ON (t2.a=t1.a AND t3.b=t1.b AND t4.c=t1.c) CROSS JOIN,JOIN,INNER JOIN,',' 类似笛卡尔积,除逗号, 带条件时,只显示两端都符合条件的 LEFT [OUTER] JOIN, RIGHT [OUTER] JOIN
相关推荐
CoderToy 2020-11-16
emmm00 2020-11-17
王艺强 2020-11-17
ribavnu 2020-11-16
bianruifeng 2020-11-16
wangshuangbao 2020-11-13
苏康申 2020-11-13
vivenwan 2020-11-13
moyekongling 2020-11-13
云中舞步 2020-11-12
要啥自行车一把梭 2020-11-12
aydh 2020-11-12
kuwoyinlehe 2020-11-12
minerk 2020-11-12
vitasfly 2020-11-12
jazywoo在路上 2020-11-11
敏敏张 2020-11-11
世樹 2020-11-11