SQL百练
文章平均质量分 59
java_beckham
这个作者很懒,什么都没留下…
展开
-
sql选出同时符合多个值记录
create table test (NAME varchar(20) not null, HOBBY varchar(20) not null); insert into test values('Adam','basketball'); insert into test values('Bill','basketball'); insert into test...2012-05-19 10:57:40 · 356 阅读 · 0 评论 -
海量用户积分排名算法探讨
这个问题确实很开放,解决思路一定很多,这个同学总结的很优雅,当然还有更多,更好的。权当参考http://www.cnblogs.com/weidagang2046/archive/2012/03/01/massive-user-ranking.html问题某海量用户网站,用户拥有积分,积分可能会在使用过程中随时更新。现在要为该网站设计一种算法,在每次用户登录时显示其当前积分排名...原创 2012-05-20 23:59:11 · 162 阅读 · 0 评论 -
数据库索引
----------简译。源=http://20bits.com/article/interview-questions-database-indexes -----------问题解释一下什么是数据库索引,和它的工作原理。 -----------回答数据库索引是一种辅助数据结构,它能加快数据提取速度。索引是针对某列数据的,比如查询“列出所有姓Smith的人”...原创 2012-06-07 10:58:47 · 80 阅读 · 0 评论 -
数据库中其中的一个表删除数据的时候特别慢
表中一共只有2000多条数据,我的删除语句是delete from jx1114 where xnxqh='2011-2012-2' 这个删除只要删除80多条数据,但是却执行了将近3分钟的时间,这张表引用了其他一个表的主键作为外键。 删除表记录非常慢有好几个原因: 1.机器性能问题,cpu被其他进程占用。这种方式最好解决,在进程管理器中关掉几个进程,释放出cpu用于处理删除记录操作...原创 2012-06-20 11:09:19 · 959 阅读 · 0 评论 -
查询重复记录和删除重复记录
查询重复记录和删除重复记录 CREATE table ts( id int(11) not null UNIQUE, pcode int(11) default NULL, cno varchar(20) default null, count1 int(11) default null)INSERT INTO `ts` VALUES ('1...原创 2012-06-20 15:36:25 · 103 阅读 · 0 评论 -
参数List size过大查询,如何提高效率
参数 list 里面装了1000+的 id (字段有索引) 然后根据这个list去数据库(oracle)中查询,如何提高效率呢?? 数据库新建临时表,查询前插入,使用表关联查询,查询完成后清除临时表数据.其中临时表可以使用数据库自动的事务管理实现 如果数据库中的表的数据过大的话首先加入索引,然后做一下表分析这样可以提高速度,另外针对楼主提出的问题也可以采取将List中的ID取出来用...原创 2012-06-22 11:41:59 · 660 阅读 · 0 评论 -
topK 算法
有一张表t_stu;其中三个字段:name,gender,grade;要求用一条sql语句查出男生前5名和女生前五名。 create table t_stu( id int(11), name varchar(20), gender int(2), grade int(12))insert into t_stu values(1,'Al...原创 2012-06-23 17:39:45 · 199 阅读 · 0 评论 -
sql以字段重新创建表
有report表:它里面 id name state customerid 四个字段,id为主键 ,customerid为外键 state 0, 1,2 // 未使用 更新 删除 根据customerid写一条sql (注意是一条)生成表的结构如下: customerid state0 state1 state2 001 11 212 333 002 15 545 3...原创 2012-06-27 14:42:02 · 297 阅读 · 0 评论