补充一下我的代码:
mysql> update salesclerk,(select s_ID,sum(total) as sale from indent where month
(date)='09' group by s_ID) as result
    -> set salesclerk.sale=result.sale
-> where (salesclerk.s_ID=result.s_ID);
这是把订单中9月每个售货员的销售额写进售货员表sale中
排名我不会弄,是手动插入的,只知道可以这样查他们的排名(s_ID=2售货员)
select count(1) as rank from salesclerk where sale >= (select sale from salesclerk where s_ID = 2)

解决方案 »

  1.   

    不要贴图,最好直接贴文本的测试数据以供分析。   建议你列出你的表结构,并提供测试数据以及基于这些测试数据的所对应正确结果。
       参考一下这个贴子的提问方式http://bbs.csdn.net/topics/320211382
       
       1. 你的 create table xxx .. 语句
       2. 你的 insert into xxx ... 语句
       3. 结果是什么样,(并给以简单的算法描述)
       4. 你用的数据库名称和版本(经常有人在MS SQL server版问 MySQL)
       
       这样想帮你的人可以直接搭建和你相同的环境,并在给出方案前进行测试,避免文字描述理解上的误差。
      

  2.   

    1、顾客
    create table customer
    (c_ID varchar(10) not null primary key,
    c_name varchar(20) not null, 
    c_sex varchar(2) not null,
    birth datetime,
    tel varchar(12));
    3、商品
    create table goods
     (g_ID varchar(10) not null primary key,
     unit_price float not null,
     amount int,
     sold_amount int); 售货员
    create table salesclerk
    (s_ID varchar(10) not null primary key,
    s_name varchar(20) not null,
    s_sex varchar(2) not null,
    salary float,
    salenum int,
    sale float,
    ranking int);
    5、订单
    create table indent
    (order_ID varchar(10) not null primary key,
    date datetime not null,
    ordernum int not null,
    c_ID varchar(10),
    g_ID varchar(10),
    s_ID varchar(10),
    foreign key (c_ID) references customer(c_ID),
    foreign key (g_ID) references goods(g_ID),
    foreign key (s_ID) references salesclerk(s_ID),
    total float,
    unit_price float not null);数据
    mysql> insert into customer(c_ID,c_name,c_sex,birth) values(1001,'zhangjun','F','1995
    -1-1'),(1002,'wanghong','M','1995-2-1'),(1003,'liushen','F','1995-3-1'),(1004,'zhangxin','F
    ','1995-4-1');
    mysql> insert into customer(c_ID,c_name,c_sex,birth) values(1005,'zhouwei','M','19
    95-5-1'),(1006,'shenbing','F','1995-6-1'),(1007,'lihai','M','1995-7-1'),(1008,'zhangyan'
    ,'F','1995-8-1'),(1009,'zhaoyan','F','1995-9-1'),(1010,'sunwen','M','1995-10-1');
    2、插入商品信息
    mysql> insert into goods(g_ID,g_name,unit_price,amount) values(101,'cola','2.50'
    ,300),(102,'pepsi','2.80',400);
    mysql> insert into goods(g_ID,g_name,unit_price,amount) values(103,'Dove',39.90,
    100),(104,'shilijia',37.00,100),(105,'kisses',99.90,100),(106,'dabaitu',22.70,10
    0),(107,'Lindt',15.90,100),(108,'Nestle',39.80,100),(109,'Lipton',44.80,100);
    mysql> insert into goods(g_ID,g_name,unit_price,amount) values(110,'Maxwell',35.
    90,100),(111,'KOPIKO',49.70,100),(112,'AVS',59.00,100),(113,'pantene',39.90,100)
    ,(114,'CLEAR',35.50,100),(115,'Rejoice',39.90,100),(116,'LUX',57.80,100);
    mysql> insert into goods(g_ID,g_name,unit_price,amount) values(117,'OMO',19.00,1
    00),(118,'Tide',13.50,100),(119,'ZHONGHUA',8.60,100),(120,'CREST',3.20,100);
    插入售货员信息
    mysql> insert into salesclerk(s_ID,s_name,s_sex) values(001,'wanglei','M'),(002,
    'zhaotong','F'),(003,'xiaoqin','F'),(004,'hanzheng','M'),(005,'hanyang','M');
    插入订单信息
    mysql> insert into indent(order_ID,date,c_ID,g_ID,s_ID,ordernum) values('A01','2
    014-9-1',1001,101,1,10),('A02','2014-9-10',1002,106,3,15),('A03','2014-9-13',100
    3,104,3,6),('A04','2014-9-18',1004,108,2,16),('A05','2014-9-19',1005,110,5,12);
    mysql> insert into indent(order_ID,date,c_ID,g_ID,s_ID,ordernum) values('A06','2
    014-9-20',1006,115,1,7),('A07','2014-9-20',1007,109,3,17),('A08','2014-9-21',100
    8,113,2,6),('A09','2014-9-26',1009,118,3,7),('A10','2014-9-26',1010,120,1,3);
    mysql> insert into indent(order_ID,date,c_ID,g_ID,s_ID,ordernum) values('A11','2
    014-9-29',1001,114,4,7),('A12','2014-9-29',1002,115,4,1),('A13','2014-10-1',1003
    ,102,2,6),('A14','2014-10-1',1010,111,4,7),('A15','2014-10-2',1005,101,1,3);代码略多