MY SQL 多表查询统计,带条件判断的问题

我有4个表,a表为顾客信息,包含卡号、姓名等基本信息。b、c、d表结构大体如下(只列出了关键的列)卡号方式1消费1方式2消费2001xianjin100shuaka100... 我有4个表,a表为顾客信息,包含卡号、姓名等基本信息。b、c、d表结构大体如下(只列出了

关键的列)

卡号 方式1 消费1 方式2 消费2

001 xianjin 100 shuaka 100

002 储值卡 100 xianjin 100

001 shuaka 100

现在我要显示的结果

卡号 姓名 消费总数

001 XXX 300

002 XXX 100

003 XXX 0

b、c、d表 都是要先判断支付方式为xianjin或shuaka,才计算。而且表中一个顾客,可能存在

多条消费记录。我要的结果就是所有顾客的消费排行。如下图

我目前采用的方式是,建立临时表,把所有顾客信息写入5列,然后根据卡号,去3个表中的6列

,用6条sql语句,分别统计数据,把统计结果相加后,写入到第6列。目前顾客总数据3000条,

3个表中消费数据10000条左右,整个过程需要40秒。谁能告诉我个效率比较高的办法,解决这

个问题。
比如这种情况,能否用一条sql语句来完成,或者是不是能用视图功能完成?
我自己尝试用链接表的形式来完成,但是没有
研究了好几天,终于解决问题,换个思路很重要,现在我0.1秒就能统计出数据了,哈哈
展开
 我来答
匿名用户
推荐于2016-10-25
展开全部
可以先写个多表查询的语句,再建立一个索引。索引也可以多建几个的,这样效率会高很多的
追问
我这种情况,多表查询的语句怎么写呢?
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式