一个SQL语句的用法。Case 用法

来源:互联网 发布:python程序员面试 编辑:程序博客网 时间:2024/04/20 02:25

 

在做两个集合的显示,其中一个集合是另外一个的字集合,现在要把全集列出来,

而且当这个子集合中的元素在全集中时,全集中的这个记录就特别标志出来。

如:全集(2,5,9,8,14,63,22)

       子集合:(5,8,63)。

笨办法就是2次循环,现在用SQL查询,把子集合中的字段做特别标记:

SELECT a.Number as customerNumber, d.Number as salerNumber ,c.*,
case when c.InvoiceId = 43  then 1 else 0 end as flag
FROM CustomerNumber AS a, CustomerMember AS b, SaleBusiness AS c ,Salermember as d
WHERE c.CustomerMemberId=b.Id and
b.CustomerNumberId=a.Id  and 
c.SalerMemberId=d.Id and
a.Number= '27999'

在页面:

String chek=salebusiness1.getFlag()=="1"?"checked=checked":"";

 


<INPUT id="checkbox<%=i%>" <%=chek%> type="checkbox" value="<%=salebusiness1.getNumber()%>" name=checkbox<%=i%>>

 

另外是chekbox的多选择操作:

<SCRIPT type=text/JavaScript>
var count=<%=count%>;
<!--
function selectOrder()
{
  var s="";
  var checkNumber=0;
  for(var j=0;j<count;j++)
  {
    if(document.getElementById("checkbox"+j).checked)
    {
      var value=document.getElementById("checkbox"+j).value+",";
      s=s+value;
      checkNumber++;
    }
  }
//  alert(s);
  window.opener.form1.orders.value=s;
  document.form1.orders.value=s;
  if(checkNumber!=0)
    document.form1.submit();
  window.close();
}
//-->
</SCRIPT>