关于经常利用取余数来获得分组的总结
来源:互联网 发布:ppt数据图表双轴显示 编辑:程序博客网 时间:2024/05/17 08:48
<script language="javascript">
var table,len;
window.onload=init;
function init(){
table=document.getElementById("t1");
}
function addRow(){
pageDiv=document.getElementById("page");
len=table.rows.length;
pagesize=parseInt(len/10);
trunToPage(pagesize);
if (len%10==0){ //就想提一点就是取余数的用法,总结:就是向分页这样的情况,以及sql牵涉到group的情况,诸多情况都需要用取余数来分组,今天做了一个sqll想了半天才意识到哎,做了那么长时间把这个个忘了,情况如下
var aLink=document.createElement("<A>");
aLink.innerText=pagesize+1;
pageDiv.appendChild(aLink);
var aLen=pageDiv.getElementsByTagName("A").length;
for(var i=0;i<aLen;i++){
pageDiv.getElementsByTagName("A")[i].href="#";
pageDiv.getElementsByTagName("A")[i].onclick=function(){trunToPage1(this.innerText)}
}
}
var tdObj1=document.createElement("<TD>");
tdObj1.width="52";
tdObj1.className="UCCA";
tdObj1.align="center";
tdObj1.innerText=len+1;
var tdObj2=document.createElement("<TD>");
tdObj2.innerText="NO URL";
tdObj2.width="659";
tdObj2.className="UCCD";
var checkbox=document.createElement("<INPUT>");
checkbox.name="url";
checkbox.type="checkbox";
checkbox.value="#";
checkbox.onclick=function(){alert(this.name)}
var td3A=document.createElement("<A>");
td3A.href="http://www.outsourcexp.com/Index.aspx";
td3A.target="_blank";
td3A.appendChild(checkbox);
var td3div=document.createElement("<DIV>");
td3div.align="center";
td3div.className="UCCB";
td3div.appendChild(td3A);
var tdObj3=document.createElement("<TD>");
tdObj3.width="35";
tdObj3.className="UCCC";
tdObj3.appendChild(td3div);
var trObj=document.createElement("<TR>");
if(len%2==0){
trObj.style.backgroundColor="#FFFFFF";
}
else{
trObj.style.backgroundColor="#F5FAFA";
}
trObj.appendChild(tdObj1);
trObj.appendChild(tdObj2);
trObj.appendChild(tdObj3);
table.firstChild.appendChild(trObj);
}
function check(){
var j
j=0
check123=document.getElementsByTagName("INPUT")
for(i=0;i<check123.length;i++){
if (check123[i].name=="url"){
check123[i].checked=true;
}
}
}
function go_url(){
o1=document.getElementsByTagName("INPUT");
for (var i=0;i<o1.length;i++){
if(o1[i].type=="checkbox"){
if (o1[i].checked){
location.href=o1[i].value;
}
}
}
}
function trunToPage(){
if (len+1>pagesize*10){
for(i=0;i<pagesize*10;i++){
table.rows[i].style.display="none"
}
}
}
function trunToPage1(value){
len=table.rows.length;
for(i=0;i<len;i++){
table.rows[i].style.display="none"
}
for(i=(value-1)*10;i<Math.min(value*10,len);i++){
table.rows[i].style.display="block"
}
}
</script>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312"/>
<title>样式测试</title>
<style type="text/css">
body {
background-color: #E6EAE9;
}
.UCCD{color: #4F6B72;font-weight: bold;text-indent:1em;}
.UCCA {color: #4F6B72; font-weight: bold;}
td{ height:20px;}
a:link {
color: #4F6B72;
text-decoration: none;
}
a:visited,a:hover,a:active {
text-decoration: none;
color: #4F6B72;
}
<!--标签a:link:连接平常的状态 active:连接被按下的时候 visited:连接被访问过之后 hover:鼠标放到连接上的时候.文本属性都为默认值。.UCCD是控制网址前面的空格!-->
.UCCB {font-size: 12px; font-weight: bold; }
.UCCE{
color: #4F6B72;
font-weight: bold;
border-left: 1px #ffffff solid;
border-top: 1px #ffffff solid;
background-color: #D2EBEF;
font-size: 16px;
}
.UCCC{
color: #4F6B72;
font-weight: bold;
border: 1px #ffffff solid;
background-color: #D2EBEF;
font-size: 12px;
}<!-- 超链进入调用, 边框为1像素的 白色.UCCE是控制字体大小!-->
</style>
</head>
<body>
<form name=myform action="" method=post>
<table>
<tr>
<td>第</td>
<td><div id=page><a>1</a></div></td>
<td>页</td>
</tr>
</table>
<table width="100%" border="0" align="center" cellpadding="0" cellspacing="1">
<tr>
<td width="52" bgcolor="#E6EAE9" class="UCCA" align="center">序号</td>
<td width="659" bgcolor="C1DAD7" class="UCCE" align="center">网址</td>
<td width="35" style="font-size:16px" class="UCCC"><div align="center">进入</div></td>
</tr>
</table>
<table id=t1 width=100% border="0" align="center" cellpadding="0" cellspacing="1">
<tr bgcolor="#FFFFFF">
<td width="52" class="UCCA" align="center">001</td>
<td width="659" class="UCCD">http://www.outsourcexp.com/Index.aspx</td>
<td width="35" class="UCCC" ><div align="center" class="UCCB"><a href="http://www.outsourcexp.com/Index.aspx" target="_blank"><input name=url type="checkbox" value="http://www.outsourcexp.com/Index.aspx"></a></div></td>
</tr>
<tr bgcolor="#F5FAFA">
<td class="UCCA" align="center">002</td>
<td class="UCCD">http://www.getafreelancer.com/</td>
<td class="UCCC"><div align="center" class="UCCB"><a href="http://www.getafreelancer.com/" target="_blank"><input name=url type="checkbox" value="http://www.getafreelancer.com/"></a></div></td>
</tr>
<tr bgcolor="#FFFFFF">
<td class="UCCA" align="center">003</td>
<td class="UCCD">http://www.scriptlance.com/</td>
<td class="UCCC"><div align="center" class="UCCB"><a href="http://www.scriptlance.com/" target="_blank"><input name=url type="checkbox" value="http://www.scriptlance.com/"></a></div></td>
</tr>
<tr bgcolor="#F5FAFA">
<td class="UCCA" align="center">004</td>
<td class="UCCD">http://www.getacoder.com/</td>
<td class="UCCC"><div align="center" class="UCCB"><a href="http://www.getacoder.com/" target="_blank"><input name=url type="checkbox" value="http://www.getacoder.com/"></a></div></td>
</tr>
<tr bgcolor="#FFFFFF">
<td class="UCCA" align="center">005</td>
<td class="UCCD">http://www.guru.com/</td>
<td class="UCCC"><div align="center" class="UCCB"><a href="http://www.guru.com/" target="_blank"><input name=url type="checkbox" value="http://www.rentacoder.com/"></a></div></td>
</tr>
<tr bgcolor="#F5FAFA">
<td class="UCCA" align="center">006</td>
<td class="UCCD">http://www.elance.com/</td>
<td class="UCCC"><div align="center" class="UCCB"><a href="http://www.rentacoder.com/" target="_blank"><input name=url type="checkbox" value="http://www.rentacoder.com/"></a></div></td>
</tr>
<tr bgcolor="#FFFFFF">
<td class="UCCA" align="center">007</td>
<td class="UCCD">http://www.rentacoder.com/</td>
<td class="UCCC"><div align="center" class="UCCB"><a href="http://www.rentacoder.com/" target="_blank"><input name=url type="checkbox" value="http://www.rentacoder.com/"></a></div></td>
</tr>
<tr bgcolor="#F5FAFA">
<td class="UCCA" align="center">008</td>
<td class="UCCD">http://www.freelancerchina.com/</td>
<td class="UCCC"><div align="center" class="UCCB"><a href="http://www.freelancerchina.com/" target="_blank"><input name=url type="checkbox" value="http://www.freelancerchina.com/"></a></div></td>
</tr>
<tr bgcolor="#FFFFFF">
<td class="UCCA" align="center">009</td>
<td class="UCCD">NO URL</td>
<td class="UCCC"><div align="center" class="UCCB"><a href="http://www.outsourcexp.com/Index.aspx" target="_blank"><input name=url type="checkbox" value="#"></a></div></td>
</tr>
<tr bgcolor="#F5FAFA">
<td class="UCCA" align="center">010</td>
<td class="UCCD">NO URL</td>
<td class="UCCC"><div align="center" class="UCCB"><a href="http://www.outsourcexp.com/Index.aspx" target="_blank"><input name=url type="checkbox" value="#"></a></div></td>
</tr>
</table>
<div align="right"><a href="#" id="link" target="_blank"></a>
<input type="button" name="button" value="确定提交" onClick="go_url('url','link')"><input width="35" name="button2" type=button onClick="this.value=check(this.form.url)" value="选择全部"></div>
<input type=button onclick=addRow() value="增加行">
</form>
</body>
</html>
var table,len;
window.onload=init;
function init(){
table=document.getElementById("t1");
}
function addRow(){
pageDiv=document.getElementById("page");
len=table.rows.length;
pagesize=parseInt(len/10);
trunToPage(pagesize);
if (len%10==0){ //就想提一点就是取余数的用法,总结:就是向分页这样的情况,以及sql牵涉到group的情况,诸多情况都需要用取余数来分组,今天做了一个sqll想了半天才意识到哎,做了那么长时间把这个个忘了,情况如下
var aLink=document.createElement("<A>");
aLink.innerText=pagesize+1;
pageDiv.appendChild(aLink);
var aLen=pageDiv.getElementsByTagName("A").length;
for(var i=0;i<aLen;i++){
pageDiv.getElementsByTagName("A")[i].href="#";
pageDiv.getElementsByTagName("A")[i].onclick=function(){trunToPage1(this.innerText)}
}
}
var tdObj1=document.createElement("<TD>");
tdObj1.width="52";
tdObj1.className="UCCA";
tdObj1.align="center";
tdObj1.innerText=len+1;
var tdObj2=document.createElement("<TD>");
tdObj2.innerText="NO URL";
tdObj2.width="659";
tdObj2.className="UCCD";
var checkbox=document.createElement("<INPUT>");
checkbox.name="url";
checkbox.type="checkbox";
checkbox.value="#";
checkbox.onclick=function(){alert(this.name)}
var td3A=document.createElement("<A>");
td3A.href="http://www.outsourcexp.com/Index.aspx";
td3A.target="_blank";
td3A.appendChild(checkbox);
var td3div=document.createElement("<DIV>");
td3div.align="center";
td3div.className="UCCB";
td3div.appendChild(td3A);
var tdObj3=document.createElement("<TD>");
tdObj3.width="35";
tdObj3.className="UCCC";
tdObj3.appendChild(td3div);
var trObj=document.createElement("<TR>");
if(len%2==0){
trObj.style.backgroundColor="#FFFFFF";
}
else{
trObj.style.backgroundColor="#F5FAFA";
}
trObj.appendChild(tdObj1);
trObj.appendChild(tdObj2);
trObj.appendChild(tdObj3);
table.firstChild.appendChild(trObj);
}
function check(){
var j
j=0
check123=document.getElementsByTagName("INPUT")
for(i=0;i<check123.length;i++){
if (check123[i].name=="url"){
check123[i].checked=true;
}
}
}
function go_url(){
o1=document.getElementsByTagName("INPUT");
for (var i=0;i<o1.length;i++){
if(o1[i].type=="checkbox"){
if (o1[i].checked){
location.href=o1[i].value;
}
}
}
}
function trunToPage(){
if (len+1>pagesize*10){
for(i=0;i<pagesize*10;i++){
table.rows[i].style.display="none"
}
}
}
function trunToPage1(value){
len=table.rows.length;
for(i=0;i<len;i++){
table.rows[i].style.display="none"
}
for(i=(value-1)*10;i<Math.min(value*10,len);i++){
table.rows[i].style.display="block"
}
}
</script>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312"/>
<title>样式测试</title>
<style type="text/css">
body {
background-color: #E6EAE9;
}
.UCCD{color: #4F6B72;font-weight: bold;text-indent:1em;}
.UCCA {color: #4F6B72; font-weight: bold;}
td{ height:20px;}
a:link {
color: #4F6B72;
text-decoration: none;
}
a:visited,a:hover,a:active {
text-decoration: none;
color: #4F6B72;
}
<!--标签a:link:连接平常的状态 active:连接被按下的时候 visited:连接被访问过之后 hover:鼠标放到连接上的时候.文本属性都为默认值。.UCCD是控制网址前面的空格!-->
.UCCB {font-size: 12px; font-weight: bold; }
.UCCE{
color: #4F6B72;
font-weight: bold;
border-left: 1px #ffffff solid;
border-top: 1px #ffffff solid;
background-color: #D2EBEF;
font-size: 16px;
}
.UCCC{
color: #4F6B72;
font-weight: bold;
border: 1px #ffffff solid;
background-color: #D2EBEF;
font-size: 12px;
}<!-- 超链进入调用, 边框为1像素的 白色.UCCE是控制字体大小!-->
</style>
</head>
<body>
<form name=myform action="" method=post>
<table>
<tr>
<td>第</td>
<td><div id=page><a>1</a></div></td>
<td>页</td>
</tr>
</table>
<table width="100%" border="0" align="center" cellpadding="0" cellspacing="1">
<tr>
<td width="52" bgcolor="#E6EAE9" class="UCCA" align="center">序号</td>
<td width="659" bgcolor="C1DAD7" class="UCCE" align="center">网址</td>
<td width="35" style="font-size:16px" class="UCCC"><div align="center">进入</div></td>
</tr>
</table>
<table id=t1 width=100% border="0" align="center" cellpadding="0" cellspacing="1">
<tr bgcolor="#FFFFFF">
<td width="52" class="UCCA" align="center">001</td>
<td width="659" class="UCCD">http://www.outsourcexp.com/Index.aspx</td>
<td width="35" class="UCCC" ><div align="center" class="UCCB"><a href="http://www.outsourcexp.com/Index.aspx" target="_blank"><input name=url type="checkbox" value="http://www.outsourcexp.com/Index.aspx"></a></div></td>
</tr>
<tr bgcolor="#F5FAFA">
<td class="UCCA" align="center">002</td>
<td class="UCCD">http://www.getafreelancer.com/</td>
<td class="UCCC"><div align="center" class="UCCB"><a href="http://www.getafreelancer.com/" target="_blank"><input name=url type="checkbox" value="http://www.getafreelancer.com/"></a></div></td>
</tr>
<tr bgcolor="#FFFFFF">
<td class="UCCA" align="center">003</td>
<td class="UCCD">http://www.scriptlance.com/</td>
<td class="UCCC"><div align="center" class="UCCB"><a href="http://www.scriptlance.com/" target="_blank"><input name=url type="checkbox" value="http://www.scriptlance.com/"></a></div></td>
</tr>
<tr bgcolor="#F5FAFA">
<td class="UCCA" align="center">004</td>
<td class="UCCD">http://www.getacoder.com/</td>
<td class="UCCC"><div align="center" class="UCCB"><a href="http://www.getacoder.com/" target="_blank"><input name=url type="checkbox" value="http://www.getacoder.com/"></a></div></td>
</tr>
<tr bgcolor="#FFFFFF">
<td class="UCCA" align="center">005</td>
<td class="UCCD">http://www.guru.com/</td>
<td class="UCCC"><div align="center" class="UCCB"><a href="http://www.guru.com/" target="_blank"><input name=url type="checkbox" value="http://www.rentacoder.com/"></a></div></td>
</tr>
<tr bgcolor="#F5FAFA">
<td class="UCCA" align="center">006</td>
<td class="UCCD">http://www.elance.com/</td>
<td class="UCCC"><div align="center" class="UCCB"><a href="http://www.rentacoder.com/" target="_blank"><input name=url type="checkbox" value="http://www.rentacoder.com/"></a></div></td>
</tr>
<tr bgcolor="#FFFFFF">
<td class="UCCA" align="center">007</td>
<td class="UCCD">http://www.rentacoder.com/</td>
<td class="UCCC"><div align="center" class="UCCB"><a href="http://www.rentacoder.com/" target="_blank"><input name=url type="checkbox" value="http://www.rentacoder.com/"></a></div></td>
</tr>
<tr bgcolor="#F5FAFA">
<td class="UCCA" align="center">008</td>
<td class="UCCD">http://www.freelancerchina.com/</td>
<td class="UCCC"><div align="center" class="UCCB"><a href="http://www.freelancerchina.com/" target="_blank"><input name=url type="checkbox" value="http://www.freelancerchina.com/"></a></div></td>
</tr>
<tr bgcolor="#FFFFFF">
<td class="UCCA" align="center">009</td>
<td class="UCCD">NO URL</td>
<td class="UCCC"><div align="center" class="UCCB"><a href="http://www.outsourcexp.com/Index.aspx" target="_blank"><input name=url type="checkbox" value="#"></a></div></td>
</tr>
<tr bgcolor="#F5FAFA">
<td class="UCCA" align="center">010</td>
<td class="UCCD">NO URL</td>
<td class="UCCC"><div align="center" class="UCCB"><a href="http://www.outsourcexp.com/Index.aspx" target="_blank"><input name=url type="checkbox" value="#"></a></div></td>
</tr>
</table>
<div align="right"><a href="#" id="link" target="_blank"></a>
<input type="button" name="button" value="确定提交" onClick="go_url('url','link')"><input width="35" name="button2" type=button onClick="this.value=check(this.form.url)" value="选择全部"></div>
<input type=button onclick=addRow() value="增加行">
</form>
</body>
</html>
create table T([time] varchar(05),result varchar(10))
insert into T
select '00:15','success' union all
select '00:16','success' union all
select '00:25','fail' union all
select '00:35','fail' union all
select '00:36','success' union all
select '01:12','fail' union all
select '01:38','success' union all
select '03:16','success'
select convert(char(05),dateadd(minute,[time]*30,'00:00'),108)+'-'+convert(char(05),dateadd(minute,[time]*30,'00:30'),108) as [Time],
success,
fail
from
(
select datediff(minute,'00:00',[time])/30 as [time],
sum(case when result='success' then 1 else 0 end) as success,
sum(case when result='fail' then 1 else 0 end ) as fail
from T
group by datediff(minute,'00:00',[time])/30
) A
/**//*
Time success fail
----------- ----------- -----------
00:00-00:30 2 1
00:30-01:00 1 1
01:00-01:30 0 1
01:30-02:00 1 0
03:00-03:30 1 0
*/
drop table T
--像这样的分组情况,需要用到取余数来分组
insert into T
select '00:15','success' union all
select '00:16','success' union all
select '00:25','fail' union all
select '00:35','fail' union all
select '00:36','success' union all
select '01:12','fail' union all
select '01:38','success' union all
select '03:16','success'
select convert(char(05),dateadd(minute,[time]*30,'00:00'),108)+'-'+convert(char(05),dateadd(minute,[time]*30,'00:30'),108) as [Time],
success,
fail
from
(
select datediff(minute,'00:00',[time])/30 as [time],
sum(case when result='success' then 1 else 0 end) as success,
sum(case when result='fail' then 1 else 0 end ) as fail
from T
group by datediff(minute,'00:00',[time])/30
) A
/**//*
Time success fail
----------- ----------- -----------
00:00-00:30 2 1
00:30-01:00 1 1
01:00-01:30 0 1
01:30-02:00 1 0
03:00-03:30 1 0
*/
drop table T
--像这样的分组情况,需要用到取余数来分组
- 关于经常利用取余数来获得分组的总结
- 利用反射获得域的取值
- 大数取余数-----x的y次方取余数
- js % 取余数的魅力
- 取时间戳的余数
- js取整数、取余数的方法
- js取整数、取余数的方法
- js取整数、取余数的方法
- js取整数、取余数的方法
- 关于PHP利用@来抑制错误的一些总结
- Java的运算符-取整,取绝对值,取余数
- Java的运算符-取整,取绝对值,取余数
- 利用StickyListHeaders来实现ListView的分组实现
- PHP中余数、取余的妙用
- 关于SQL Server分组取前N条的问题
- 关于SQL分组取最大值的几中方式
- 关于利用jquery获得innerText的问题
- 关于求余数的思考
- 大型Web2.0站点构建技术初探
- 网站项目成功管理实践(下)
- SMTP简介
- (翻译)开发自动化测试脚本的技巧和心得
- Eval方法与Bind方法比较
- 关于经常利用取余数来获得分组的总结
- 发送邮件中遇到的问题
- 自动化测试工具兼容性报告
- .Net动态加载程序集
- WinRunner介绍
- 用VisualC#.NET编写服务器日期控件
- MD5算法之C#程序 MD5算法描述
- 使用HttpClient登陆web-login使用JerichoHTMLParser和htmlparser抓取html
- 功能测试自动化的投入和产出