mysql查询问题 Ecshop商城

岑迅 2014-09-15 04:19:10
有三张表

商品表:ec_goods
订单商品:ec_order_goods
订单信息:ec_order_info

商品表就是存放商品价格 、属性等信息
订单商品:某张订单包含的商品、规格、个数
订单信息:送货、收货地址、下单时间、发货时间、订单总价等
假设商品表有 A B C D E F ......等好多商品

我现在要根据下单时间或者发货时间来查询 这个时间段的 某商品的销售额
查询全部销售额用sum,但是分别查出各商品的销售额,因为对Mysql不清楚,所以不知道能不能弄 ~~~
...全文
258 8 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
WWWWA 2014-09-18
  • 打赏
  • 举报
回复
自行解决更好
岑迅 2014-09-18
  • 打赏
  • 举报
回复
KO , 谢谢诸位 select g.goods_name,count(1) from ec_order_info as o,ec_order_goods as g where g.order_id = o.order_id and best_time like '2014-09-15%' group by g.goods_id
岑迅 2014-09-17
  • 打赏
  • 举报
回复
额 ~ 数据格式有点问题~ 引号 冒号有问题~ 大致格式 就是这样 ~
岑迅 2014-09-17
  • 打赏
  • 举报
回复
引用 4 楼 ACMAIN_CHM 的回复:
建议你列出你的表结构,并提供测试数据以及基于这些测试数据的所对应正确结果。 参考一下这个贴子的提问方式http://bbs.csdn.net/topics/320211382
引用 3 楼 benluobobo 的回复:
可以的,建议你贴出表结构,以及数据和需要的结果,可以是测试数据
sorry~ 服务器: localhost via TCP/IP 软件: MySQL 软件版本: 5.5.38 - MySQL Community Server (GPL) 协议版本: 10 用户: root@localhost 服务器字符集: UTF-8 Unicode (utf8) 结构有点大~ 现在简化了下 结构如下 现在就是要取出 巴旦木、杏仁果、肉松饼....(下面就只是列了这三种,有N种商品) 在某个时间内的销售量 取所有的我就知道用用count~ , 要分别列出各商品的就不知道怎么弄了

--
-- 表的结构 `ec_goods`
--

CREATE TABLE IF NOT EXISTS `ec_goods` (
  `goods_id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
  `cat_id` smallint(5) unsigned NOT NULL DEFAULT '0',
  `goods_sn` varchar(60) NOT NULL DEFAULT '',
  `goods_name` varchar(120) NOT NULL DEFAULT '',
  `shop_price` decimal(10,2) unsigned NOT NULL DEFAULT '0.00',
  `goods_brief` varchar(255) NOT NULL DEFAULT '',
  `goods_desc` text NOT NULL,
  `add_time` int(10) unsigned NOT NULL DEFAULT '0',
  `sort_order` smallint(4) unsigned NOT NULL DEFAULT '100',
  `is_delete` tinyint(1) unsigned NOT NULL DEFAULT '0',
  `is_best` tinyint(1) unsigned NOT NULL DEFAULT '0',
  `is_new` tinyint(1) unsigned NOT NULL DEFAULT '0',
  `is_hot` tinyint(1) unsigned NOT NULL DEFAULT '0',
  `last_update` int(10) unsigned NOT NULL DEFAULT '0',
  `goods_type` smallint(5) unsigned NOT NULL DEFAULT '0',
  PRIMARY KEY (`goods_id`),
  KEY `goods_sn` (`goods_sn`),
  KEY `cat_id` (`cat_id`),
  KEY `last_update` (`last_update`),
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=73 ;

--
-- 转存表中的数据 `ec_goods`
--

INSERT INTO `ec_goods` (`goods_id`, `goods_sn`, `goods_name`, `shop_price`, `goods_brief`, `goods_desc`, `add_time`, `is_delete`, `is_best`, `is_new`, `is_hot`, `last_update`) VALUES
(1, 'ECS000001', '巴旦木', '19.80', '这里是brief', '这里是desc', 1405626416, 0, 0, 0, 0, 1410462880),
(2, 'ECS000002', '杏仁果', '19.80', '这里是brief', '这里是desc', 1405626441, 0, 0, 0, 0, 1410313489);
(3, 'ECS000003', '肉松饼', '10.10', '这里是brief', '这里是desc', 1405626446, 0, 0, 0, 0, 1410473689);



CREATE TABLE IF NOT EXISTS `ec_order_goods` (
  `rec_id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,		
  `order_id` mediumint(8) unsigned NOT NULL DEFAULT '0',		
  `goods_id` mediumint(8) unsigned NOT NULL DEFAULT '0',
  `goods_name` varchar(120) NOT NULL DEFAULT '',
  `goods_sn` varchar(60) NOT NULL DEFAULT '',
  `goods_number` smallint(5) unsigned NOT NULL DEFAULT '1',
  `goods_price` decimal(10,2) NOT NULL DEFAULT '0.00',
  PRIMARY KEY (`rec_id`),
  KEY `order_id` (`order_id`),
  KEY `goods_id` (`goods_id`)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=3 ;

--
-- 转存表中的数据 `ec_order_goods`
--

INSERT INTO `ec_order_goods` (`rec_id`, `order_id`, `goods_id`, `goods_name`, `goods_sn`, `goods_number`, `goods_price`,) VALUES
(1, 1, 1, '巴旦木', 'ECS000001', 1, '19.80'),
(2, 1, 2, '杏仁果', 'ECS000002', 2, '19.80');
(3, 2, 1, '巴旦木', 'ECS000001', 4, '19.80'),
(4, 2, 2, '杏仁果', 'ECS000002', 2, '19.80');
(5, 3, 1, '巴旦木', 'ECS000001', 2, '19.80'),
(6, 3, 2, '杏仁果', 'ECS000002', 5, '19.80');
(7, 4, 1, '巴旦木', 'ECS000001', 2, '19.80'),
(8, 4, 2, '杏仁果', 'ECS000002', 6, '19.80');
(9, 4, 3, '肉松饼', 'ECS000003', 3, '10.80'),
(10, 5, 3, '肉松饼', 'ECS000003', 2, '10.80');


--
-- 结构 `ec_order_info`
--

CREATE TABLE IF NOT EXISTS `ec_order_info` (
  `order_id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
  `order_sn` varchar(20) NOT NULL DEFAULT '',
  `user_id` mediumint(8) unsigned NOT NULL DEFAULT '0',
  `add_time` int(10) unsigned NOT NULL DEFAULT '0',
  PRIMARY KEY (`order_id`),
  UNIQUE KEY `order_sn` (`order_sn`),
  KEY `user_id` (`user_id`),
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=1493 ;

--
-- 数据 `ec_order_info`
--

INSERT INTO `ec_order_info` (`order_id`, `order_sn`, `user_id`, `add_time`) VALUES
(1, '2014-05-10-008', 1137, '2014-05-10 15:00'),
(2, '2014-05-10-009', 1157, '2014-05-11 12:00'),
(3, '2014-05-10-010', 1158, '2014-05-11 16:00');
(4, '2014-05-10-010', 1158, '2014-05-12 11:00');
(5, '2014-05-10-010', 1158, '2014-05-12 13:00');

ACMAIN_CHM 2014-09-15
  • 打赏
  • 举报
回复
建议你列出你的表结构,并提供测试数据以及基于这些测试数据的所对应正确结果。 参考一下这个贴子的提问方式http://bbs.csdn.net/topics/320211382 1. 你的 create table xxx .. 语句 2. 你的 insert into xxx ... 语句 3. 结果是什么样,(并给以简单的算法描述) 4. 你用的数据库名称和版本(经常有人在MS SQL server版问 MySQL) 这样想帮你的人可以直接搭建和你相同的环境,并在给出方案前进行测试,避免文字描述理解上的误差。
benluobo 2014-09-15
  • 打赏
  • 举报
回复
可以的,建议你贴出表结构,以及数据和需要的结果,可以是测试数据 方便测试
chengchow2001 2014-09-15
  • 打赏
  • 举报
回复
左【右】链接查询
牵着你的手 2014-09-15
  • 打赏
  • 举报
回复
应该是可以的,group by分组应该可以

56,940

社区成员

发帖
与我相关
我的任务
社区描述
MySQL相关内容讨论专区
社区管理员
  • MySQL
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧