mysql两表按条件联合查询请教
【goods_attr】 用于存储产品所需缴纳税收比例
【order_goods】 用于存储订单相关信息。
现需要查询语句为:
order_goods表中order_id=2,且税收金额等于7%的有几个商品,和商品所需要缴纳的税收总额是多少?
请教各位同学。谢谢了
SQL语句如下:
--
-- 数据库: `test`
--
-- --------------------------------------------------------
--
-- 表的结构 `goods_attr`
--
CREATE TABLE IF NOT EXISTS `goods_attr` (
`goods_attr_id` int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT '自动编号',
`goods_id` mediumint(8) unsigned NOT NULL DEFAULT '0' COMMENT '商品编号',
`attr_id` smallint(5) unsigned NOT NULL DEFAULT '0' COMMENT '属性ID',
`attr_value` text NOT NULL COMMENT '税率值',
PRIMARY KEY (`goods_attr_id`),
KEY `goods_id` (`goods_id`),
KEY `attr_id` (`attr_id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=5 ;
--
-- 转存表中的数据 `goods_attr`
--
INSERT INTO `goods_attr` (`goods_attr_id`, `goods_id`, `attr_id`, `attr_value`) VALUES
(1, 971, 1, '3%'),
(2, 972, 2, '19%'),
(3, 974, 3, '7%'),
(4, 975, 3, '7%');
-- --------------------------------------------------------
--
-- 表的结构 `order_goods`
--
CREATE TABLE IF NOT EXISTS `order_goods` (
`rec_id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT COMMENT '自增编号',
`order_id` mediumint(8) unsigned NOT NULL DEFAULT '0' COMMENT '订单编号',
`goods_id` mediumint(8) unsigned NOT NULL DEFAULT '0' COMMENT '商品编号',
`goods_name` varchar(120) NOT NULL DEFAULT '' COMMENT '商品名称',
`goods_number` smallint(5) unsigned NOT NULL DEFAULT '1' COMMENT '商品数量',
`market_price` decimal(10,2) NOT NULL DEFAULT '0.00' COMMENT '市场价',
`goods_price` decimal(10,2) NOT NULL DEFAULT '0.00' COMMENT '会员价',
PRIMARY KEY (`rec_id`),
KEY `order_id` (`order_id`),
KEY `goods_id` (`goods_id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=5 ;
--
-- 转存表中的数据 `order_goods`
--
INSERT INTO `order_goods` (`rec_id`, `order_id`, `goods_id`, `goods_name`, `goods_number`, `market_price`, `goods_price`) VALUES
(1, 1, 971, '苏醒的乐园韩版短款加厚 羽绒服女 YRF114', 1, '599.00', '259.00'),
(2, 2, 972, '短款加厚韩版羽绒服', 1, '1398.00', '259.00'),
(3, 2, 974, '长款修身拼接纯色连帽羽绒服', 1, '899.00', '299.00'),
(4, 2, 975, 'OL气质毛呢厚外套呢大衣', 1, '259.00', '149.00');
相关推荐
MySQL知识点总结[可运行源码]
本文详细总结了MySQL数据库的核心知识点,包括数据库基本概念、SQL语句分类及语法、DDL数据定义语句、DML数据操作语句、DQL数据查询语句、DCL数据控制语句以及多表查询等内容。文章首先介绍了数据库的重要性及其在应用系统开发中的关键作用,随后详细讲解了SQL语句的通用语法、注释方法及分类。此外,还涵盖了数据库表操作、数据类型、修改操作以及数据增删改查的具体语法和注意事项。最后,文章深入探讨了多表查询的多种方式,包括内连接、外连接、自连接和子查询等,为读者提供了全面的MySQL学习指南。
Mysql多表联合查询
MySql,多表联合查询加AS语句,多余的就不说了,自己看,绝对简单!
mysql多表联合查询操作实例分析
主要介绍了mysql多表联合查询操作,结合实例形式分析了mysql多表联合查询的语法、功能、相关操作技巧与注意事项,需要的朋友可以参考下
mysql多表联合查询
mysql多表联合查询 表连接的约束条件 MySQL如何优化LEFT JOIN和RIGHT JOIN
详解Mysql多表联合查询效率分析及优化
1. 多表连接类型 1. 笛卡尔积(交叉连接) 在MySQL中可以为CROSS JOIN或者省略CROSS即JOIN,或者使用’,’ 如: SELECT * FROM table1 CROSS JOIN table2 SELECT * FROM table1 JOIN table2 SELECT * FROM table1,table2 由于其返回的结果为被连接的两个数据表的乘积,因此当有WHERE, ON或USING条件的时候一般不建议使用,因为当数据表项目太多的时候,会非常慢。一般使用LEFT [OUTER] JOIN或者RIGHT [OUTER] JOIN 2.


