首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > Java相关 >

请问mysql有关问题

2012-09-25 
请教mysql问题CREATE TABLE ab(id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,aid INT,num INT) INSERT IN

请教mysql问题
CREATE TABLE ab(
  id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
  aid INT,
  num INT
) ;

INSERT INTO ab VALUES(1, 1, 10);
INSERT INTO ab VALUES(2, 2, 12);
INSERT INTO ab VALUES(3, 3, 1);
INSERT INTO ab VALUES(4, 1, 12);
INSERT INTO ab VALUES(5, 2, 13);
INSERT INTO ab VALUES(6, 3, 14);
INSERT INTO ab VALUES(7, 4, 20);
INSERT INTO ab VALUES(8, 1, 1);
INSERT INTO ab VALUES(9, 2, 2);
INSERT INTO ab VALUES(10, 3, 18);
INSERT INTO ab VALUES(11, 5, 12);
INSERT INTO ab VALUES(12, 2, 13);

SELECT SUM(NUM) FROM AB A WHERE NOT EXISTS(SELECT 1 FROM AB WHERE (A.AID=AID AND A.NUM<NUM)
OR (A.`aid`=AID AND A.`num`=NUM AND A.`id`<ID))
可以得到不同用户最大数量之和,同时避免重复数量的多次统计,如果在表中再加一个字段,如时间,现在需要统计某个时间段的值,该hql如何编写????

[解决办法]
HQL的不会,顶下。
[解决办法]
加distinct关键字过滤相同的内容.

[解决办法]
查询2011年间的
select aid,max(num) from ab where dd < '2011-12-31' and dd>'2011-1-1' group by aid;

热点排行