mysql两表按条件联合查询请教

TingDianYiHou 2013-02-04 11:38:48
各位同学深夜好,我有两个表:
【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');
...全文
183 2 点赞 打赏 收藏 举报
写回复
2 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
TingDianYiHou 2013-02-05
非常感谢ACMAIN_CHM版主解惑。刚我测试了一下。得到的结果和我描述的不一样。是我的错。没有描述好。 现只需要得到如下结果: 统计:order_goods表中order_id=2,且税收金额等于7%的商品;得到该订单所需要缴纳的税收总额是多少?谢谢。 商品会员价*税收金额7% 即等于该单商品的税收金额。
  • 打赏
  • 举报
回复
ACMAIN_CHM 2013-02-04
select *,market_price*attr_value from order_goods o,goods_attr a where o.order_id=2 and o.goods_id=a.goods_id and a.attr_value='7%'
  • 打赏
  • 举报
回复
相关推荐
发帖
MySQL
加入

5.5w+

社区成员

MySQL相关内容讨论专区
申请成为版主
帖子事件
创建了帖子
2013-02-04 11:38
社区公告
暂无公告