这是我已经有。Mysql查询多个项目的顺序(陈述)
SELECT karma
, profanity
, username
FROM users
ORDER
BY (karma - profanity) DESC
LIMIT 10
我怎么可以为了通过ORDER BY (karma - profanity) DESC LIMIT 10
和ORDER BY profanity DESC LIMIT 10
CREATE TABLE Test
(`id` int, `username` varchar(55), `karma` int,`profanity` int)
;
INSERT INTO Test
(`id`, `username`, `karma`, `profanity`)
VALUES
(1, 'User1', '10', '1'),
(2, 'User2', '8', '2'),
(3, 'User3', '1', '2'),
(4, 'User4', '11', '1'),
(5, 'User5', '5', '0'),
(6, 'User6', '6', '3'),
(7, 'User7', '1', '1'),
(8, 'User8', '2', '3'),
(9, 'User9', '2', '1'),
(10, 'User10', '1', '7'),
(11, 'User11', '7', '7'),
(12, 'User12', '1', '1'),
(13, 'User13', '10', '0'),
(14, 'User14', '1', '3'),
(15, 'User15', '7', '0')
;
期望的结果会是这样的:
karma, profanity, username | profanity username
10 0 User13 7 User11
11 1 User4 7 User10
10 1 User1 3 User8
7 0 User15 3 User6
8 2 User2 3 User14
5 0 User5 2 User3
6 3 User6 2 User2
2 1 User9 1 User4
1 1 User7 1 User7
1 1 User12 1 User9
既具有输出result[i].(karma - profanity) and result[i].profanity)
两个顺序组合成一个有订单不同的标注
http://sqlfiddle.com/#!9/7ca828/2
的http:// sqlfiddle.com/#!9/7ca828/2 –
有你去。我赞成小提琴。 @Strawberry带走它 – Drew
希望这有足够的信息 –