mysql - Ordering Records by the contents of Related Table -


i have 2 tables. 1 salesman , other sales wish order output of query alpha sort of name of salesman.

here table structure:

create  table `salesman` (   `id` int not null auto_increment ,   `name` varchar(45) null ,   primary key (`id`) );   insert `salesman` (`name`) values ('bill'); insert `salesman` (`name`) values ('john'); insert `salesman` (`name`) values ('dave'); insert `salesman` (`name`) values ('mark');   create  table `sales` (   `id` int not null auto_increment ,   `item` int varchar(45) null ,   `salemesman_id` int null ,   `total` int null ,   primary key (`id`) );  insert `sales` (`item`, `salemesman_id`, `total`) values ('pen', '3', '14'); insert `sales` (`item`, `salemesman_id`, `total`) values ('rat', '1', '12'); insert `sales` (`item`, `salemesman_id`, `total`) values ('car', '2', '1230'); insert `sales` (`item`, `salemesman_id`, `total`) values('rabbit', '2', '11'); insert `sales` (`item`, `salemesman_id`, `total`) values('towel', '1', '6'); insert `sales` (`item`, `salemesman_id`, `total`) values('vaporware', '4','900'); 

because names in salesmen in alpha order are: bill, dave, john, mark

i need output be

rat         1  12              (bill = 1) towel       1  6               (bill = 1) pen         3  14              (dave = 3) car         2   1230           (john = 2) rabbit      2    11            (john = 2) vaporware   4    900           (mark = 4) 

you can want joining tables together:

select s.* sales s join      salesman sm      on s.salesman_id = sm.id order sm.name, sm.id; 

i feel need add table name "salesman" seems unnecessarily restrictive half human race.


Comments

Popular posts from this blog

python - How to create a legend for 3D bar in matplotlib? -

java - Multi-Label Document Classification -

php - Dynamic url re-writing using htaccess -