比如
c1 c2 c3 c4 c5
1 0 0 0 0
0 1 0 0 0
0 0 1 0 0
0 0 0 0 0那么,检查结果应该为
c1 c2 c3
1 0 0
0 1 0
0 0 1
0 0 0
或
直接得到c1,c2,c3的列名也行
c1 c2 c3 c4 c5
1 0 0 0 0
0 1 0 0 0
0 0 1 0 0
0 0 0 0 0那么,检查结果应该为
c1 c2 c3
1 0 0
0 1 0
0 0 1
0 0 0
或
直接得到c1,c2,c3的列名也行
解决方案 »
- 通讯数据包的设计问题
- 共享内存能用CString和Variant类型吗
- [100分][新手问题]关于Release和Debug下遇到的问题,不知道怎么解决。
- 请问:一个类中需用到CPtrArray之类的成员变量,怎么使类的封装性好一点呢?
- 请教有关shell编程的问题:在explore选中几个文件,如何单击工具条上的自定义按钮得到选中文件的列表。
- 新手上路:3DWinOGL中的问题,谢了
- 怎么给别人加分啊?
- 如何从ChtmlView中得到他使用的接口IWebBrowser2?
- 如何分割多个字符串的文本到数组中。
- 全世界无产阶级联合起来,祝各位五一国际劳动节快乐!让COM技术去见鬼吧!
- 为什么加入这一句后,就不能删除这个buf了呢
- 如何编写一个高性能的文件服务器?(50分)
CString str;
for(int i = 0; i < 100; i ++){
if(bColumn[i]){
if(bFlag) str += ",字段i";
else {
str += "字段i";
bFlag = true;
}
}
}
CString strSql;
if(bFlag) strSql.Format("select %s from [table]", str);
遍历所有记录,所有列,对每一条记录的每一列进行判断
参考http://community.csdn.net/Expert/FAQ/FAQ_Index.asp?id=196279
或者构造你的sql语句,像这样
strSQL = "select * from tbname where c1 = 1";
for (i = 1; i < 101; i++)
{
strFiledName.Format(" or c%d = 1", i);
strSQL += strFieldName;
}
执行这个SQL(SQL可能太长了...)