2014-01-18 21 views
-3

[MySQL]我想选择赚更多的员工,问题是我使用两张桌子。选择赚得更多的员工

最后我不知道该怎么做。

我构建了一个查询,可以统计大多数服务的数量并进行排序,但查询有缺陷,因为服务的值较高。

这里是表结构。

CREATE TABLE IF NOT EXISTS `contas` (
    `id` int(11) NOT NULL AUTO_INCREMENT, 
    `id_servico` int(11) DEFAULT NULL, 
    `id_funcionario` int(11) DEFAULT NULL, 
    `data` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, 
    PRIMARY KEY (`id`) 
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=28 ; 


CREATE TABLE IF NOT EXISTS `servicos` (
    `id` int(11) NOT NULL AUTO_INCREMENT, 
    `titulo` varchar(250) NOT NULL COMMENT 'Título do serviço', 
    `descri` mediumtext COMMENT 'uma pequena descrição do serviço', 
    `valor` varchar(10) NOT NULL COMMENT 'valor bruto do serviço', 
    `comissao` varchar(10) DEFAULT NULL COMMENT 'comissão por funcionario', 
    `data` timestamp NULL DEFAULT CURRENT_TIMESTAMP, 
    PRIMARY KEY (`id`) 
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=8 ; 
+0

您的意思是赚得最多的员工? – Songo

+0

是的,这正是 – moderadorkl25

+0

加油。加倍努力 – Strawberry

回答

0

选择所有员工,加入他们的“服务”,然后按员工ID进行分组,并将他们的收入相加并选择第一个。

​​
+0

总是有一个。 – Strawberry

+0

回复后我看到您的评论...我可以说什么,这似乎很简单,所以我写了一个查询。 –

+0

我不知道我为什么被拒绝投票,我希望这不是因为我回答了一个不好的问题... –