第一句
select user_name,sum(company_part)as company_part from
bets_casino where(home_team_name=1) group by user_name order by company_part desc limit 1
第二句
select
count(*),
sum(company_part),
sum(user_amount),
sum(company_amount),
sum(IF(goal_home=3,odds*(1-sole_per-parter_per),amount*(1-sole_per-parter_per))),
sum(IF(goal_home=3,odds*(1-sole_per-parter_per)*0.008,amount*(1-sole_per-parter_per)*0.008))
from bets_casino where(home_team_name=1)MYSQL中怎样才能将2句查询语句合并为一条呢?在查询第2句的时候,也能得出第一句的结果??????
select user_name,sum(company_part)as company_part from
bets_casino where(home_team_name=1) group by user_name order by company_part desc limit 1
第二句
select
count(*),
sum(company_part),
sum(user_amount),
sum(company_amount),
sum(IF(goal_home=3,odds*(1-sole_per-parter_per),amount*(1-sole_per-parter_per))),
sum(IF(goal_home=3,odds*(1-sole_per-parter_per)*0.008,amount*(1-sole_per-parter_per)*0.008))
from bets_casino where(home_team_name=1)MYSQL中怎样才能将2句查询语句合并为一条呢?在查询第2句的时候,也能得出第一句的结果??????
inner join
(select count(*), sum(company_part), sum(user_amount), sum(company_amount), sum(IF(goal_home=3,odds*(1-sole_per-parter_per),amount*(1-sole_per-parter_per))), sum(IF(goal_home=3,odds*(1-sole_per-parter_per)*0.008,amount*(1-sole_per-parter_per)*0.008)) from bets_casino where(home_team_name=1)) as b;
inner join
(select count(*), sum(company_part), sum(user_amount), sum(company_amount), sum(IF(goal_home=3,odds*(1-sole_per-parter_per),amount*(1-sole_per-parter_per))),
sum(IF(goal_home=3,odds*(1-sole_per-parter_per)*0.008,amount*(1-sole_per-parter_per)*0.008)) from bets_casino where(home_team_name=1)) as b;可以优化下么?如果数据海量,那应该比较慢吧!
简化一点
表table中字段id name money1 money2 money3 txt
1 a 500 200 300 1
2 b 200 100 200 1
3 c 500 100 100 1
4 d 200 88 -99 1
5 a 600 77 -66 1
6 b 500 55 33 1
7 c 300 22 -11 1
8 d 100 20 10 1
9 a 600 77 66 2
10 b 500 55 33 2
11 c 300 22 11 2
12 d 100 20 10 2select name,sum(money1)as money1 from
table where(txt=1) group by name order by money1 desc limit 1
//这样能查出txt=1的money1值最大的name和money1的值.select sum(money1) sum(money2) sum(money3) from table where(txt=1)
//这样能查出txt=1的money1,money2,money3的和.我现在想显示的表格为:txt=1时sum(money1) | txt=1时sum(money2) | txt=1时sum(money3) | txt=1时money1值最大的name | txt=1时money1最大值
| | | |