| 发表于:2007-08-14 11:04:136楼 得分:0 |
谢谢 但是 次数不是按比例显示的吧! 这个还是个重要的要求! 我实现了 是在java文件, public void getview() throws sqlexception { try { conn(); string sqlview = "select item.item_id,item.item_materia, view_ra.view_ratio,view_ra.view_id,acc_log.view_count_temp,acc_log.view_count from item item inner join view_ratio view_ra on item.item_id=view_ra.item_id inner join access_log acc_log on view_ra.view_id=acc_log.view_id where view_ra.control_id=1; "; statement stmt = conn.createstatement(); resultset rs1 = stmt.EXECutequery(sqlview); int recount = 0; while(rs1.next()){ recount++; } rs1.close(); resultset rs = stmt.EXECutequery(sqlview); string[][] s = new string[recount][6]; int i = 0; while (rs.next()) { s[i][0] = rs.getstring( "view_id "); s[i][1] = rs.getstring( "item_materia "); s[i][2] = rs.getstring( "view_count_temp "); s[i][3] = rs.getstring( "view_ratio "); s[i][4] = rs.getstring( "item_id "); s[i][5] = rs.getstring( "view_count "); i = i + 1; } rs.close(); views =s; // boolean count = false; // for (int e = 0; e < s.length; e++) { // if (s[e][2].equals( "0 ") ) { // path = s[e][1]; // count = true; // string sqlupdate = "update access_log set view_count=view_count+1,view_count_temp=view_count_temp+1 where view_id= "+s[e][0]; // stmt.EXECuteupdate(sqlupdate); // break; // } // // } // if (count == false) { // double sum = 0; // for (int j = 0; j < s.length; j++) { // sum = sum + double.valueof(s[j][5]); // } // double[] doub = new double[s.length]; // for (int k = 0; k < s.length; k++) { // doub[k] = double.valueof(s[k][5]) / sum // - double.valueof(s[k][3]); // } // boolean zero = false; //// for (int d = 0; d < doub.length; d++) { //// if (doub[d] == 0) { //// zero = true; //// } else { //// zero = false; //// } //// } // if (zero == false) { // for (int a = doub.length - 1; a > 0; a--) { // for (int b = 0; b < a; b++) { // if (doub[b] > doub[b + 1]) { // double tmp = doub[b]; // doub[b] = doub[b + 1]; // doub[b + 1] = tmp; // // } // } // } // for (int c = 0; c < doub.length; c++) { // if (double.valueof(s[c][5]) / sum // - double.valueof(s[c][3]) == doub[0]) { // path = s[c][1]; // string sqlupdate = "update access_log set view_count=view_count+1,view_count_temp=view_count_temp+1 where view_id= "+s[c][0]; // stmt.EXECuteupdate(sqlupdate); // break; // } // } // // system.out.print(path); // //stmt.EXECuteupdate( " "); // } else { // //insert // // } // // } } catch (exception e) { e.printstacktrace(); } finally { conn 但是要求javabean + javascript 实现计算 显示(--好苛刻) 怎么个分呢 | | |
|