-
1、使用[NOT]EXISTS的子查询:
如果子查询返回任何行,EXISTS将返回TURE;否则返回FALSE.
查看全部 -
-- 求所有电脑产品的平均价格,并且保留两位小数,AVG,MAX,MIN、COUNT、SUM为聚合函数
SELECT ROUND(AVG(goods_price),2) AS avg_price FROM tdb_goods;
-- 查询所有价格大于平均价格的商品,并且按价格降序排序
SELECT goods_id,goods_name,goods_price FROM tdb_goods WHERE goods_price > 5845.10 ORDER BY goods_price DESC;
-- 使用子查询来实现
SELECT goods_id,goods_name,goods_price FROM tdb_goods
WHERE goods_price > (SELECT ROUND(AVG(goods_price),2) AS avg_price FROM tdb_goods)
ORDER BY goods_price DESC;
-- 查询类型为“超记本”的商品价格
SELECT goods_price FROM tdb_goods WHERE goods_cate = '超级本';
-- 查询价格大于或等于"超级本"价格的商品,并且按价格降序排列
SELECT goods_id,goods_name,goods_price FROM tdb_goods
WHERE goods_price = (SELECT goods_price FROM tdb_goods WHERE goods_cate = '超级本')
ORDER BY goods_price DESC;
系统报错:subquery returns more than one row.因为子查询中有3条记录。
解决方法:用some、any 或者all来解决,其中some等价于any等价于in
-- = ANY 或 = SOME 等价于 IN
SELECT goods_id,goods_name,goods_price FROM tdb_goods
WHERE goods_price IN (SELECT goods_price FROM tdb_goods WHERE goods_cate = '超级本')
ORDER BY goods_price DESC;
查看全部 -
1.子查询是指在另一个查询语句中的SELECT子句。
例句:
SELECT * FROM t1 WHERE column1 = (SELECT column1 FROM t2);
其中,SELECT * FROM t1 ...称为Outer Query[外查询](或者Outer Statement),
SELECT column1 FROM t2 称为Sub Query[子查询]。
所以,我们说子查询是嵌套在外查询内部。而事实上它有可能在子查询内部再嵌套子查询。
子查询必须出现在圆括号之间。
查看全部 -
mysql外键约束的要求解析
查看全部 -
mysql外键约束的要求解析
查看全部 -
入门经典查看全部
-
mysql数据库
查看全部 -
查看所有的数据表:SHOW TABLES;
创建数据表:CREATE TABLE tab1
查看数据表tab1:SHOW COLUMNS FROM tab1
向数据表中插入记录:INSERT tab1(username) VALUES('hyy')
SELECT * FROM tab1;
自动编号:AUTO_INCREMENT;
主键约束PRIMARY KEY;
唯一约束UNIQUE KEY;
默认约束DEFAULT;
查看全部 -
主键约束,只能有一个,但不需要赋值,自动为NOT NULL
唯一约束,可以有多个,需要赋值,其值可为NULL,但有多个NULL时只会保存一个NULL
默认约束,当插入记录时,如果没有明确为字段赋值。则自动赋予默认值
查看全部 -
CHAR:定长,不足则后面补空格
VARCHAR:不定长(可变的: variable)
L+1或L+2里多出来的字节是用来保存数据值的长度的。在对长度可变的数据进行处理时,MySQL要把数据内容和数据长度都保存起来。1指L的最大存储范围,1个字节即8个1。
对于有符号数最高位为符号位,但是字符型是无符号数,所以2^7+2^6+2^5+2^4+2^3+2^2+2^1+1=255,即第一个L<=255。查看全部 -
mysql字符型数据
查看全部 -
各日期类型的起止时间
1、YEAR:1970至2069
2、TIME:-838:59:59至838:59:59
3、DATE:1000-1-1至9999-12-31
4、DATETIME: 1000-1-1 00:00:00至9999-12-31 23:59:59
5、TIMESTAMP存储范围:1970-1-1 00:00:00到2037-12-31 23:59:59查看全部 -
大小写问题
查看全部 -
插入记录:
INSERT [INTO] tbl_name [(col_name, ...)] {VALUES | VALUE} ({expr | DEFAULT}),(...),,,注意:如果省略字段的名字,则VALUES中必须注明所有字段的数值。
查看全部 -
查看数据表结构:show columns from tb1_name
查看全部
举报