例如:
表
F1 F2 F3 F4 F5 F6
语文 数学 英语 政治 物理 化学
数学 英语 政治 物理 化学 体育
地理 语文 数学 英语 政治 劳动
........
现有一条记录信息(例如为数组形式)
A(1) A(2) A(3) A(4) A(5) A(6)
政治 物理 化学 体育 地理 语文 我该如何编写代码,实现选取表中的6个字段
的内容与这条记录信息重复N(可变)个的记录呢?
例如条件重复N=4,既得到结果为表中的第1条。请附源码及解释,谢谢!如能解决问题,分数不够的话还可再加。
表
F1 F2 F3 F4 F5 F6
语文 数学 英语 政治 物理 化学
数学 英语 政治 物理 化学 体育
地理 语文 数学 英语 政治 劳动
........
现有一条记录信息(例如为数组形式)
A(1) A(2) A(3) A(4) A(5) A(6)
政治 物理 化学 体育 地理 语文 我该如何编写代码,实现选取表中的6个字段
的内容与这条记录信息重复N(可变)个的记录呢?
例如条件重复N=4,既得到结果为表中的第1条。请附源码及解释,谢谢!如能解决问题,分数不够的话还可再加。
解决方案 »
- 同时删除mshflexgrid中的多行数据
- 各位大大,急问一个Win API的问题
- 已经理解ACTIVEX 控件, 但不明白ACTIVEX EXE 与ACTIVEX DLL 的区别, 请简单说说
- 在VB应用程序中调用Excel对象
- 请提供几个比较好的控件网站吧
- 求助
- 我在用ADO对象编程时,有一些错误提示不知是什么意思,如何解决?
- 大家帮个忙!180分 = 一个sql语句。还有90分在其它帖上!在线等待!
- 急急急!用printform方法打印窗体问题!(下午要交工,万事具备就差它啦!!!)
- 请问那个程序员资格考试(也就是政府受理的)在就业中用处大么?另外这个东西政府的哪个部门受理是人事局么?谢谢各位仁兄指点一下。
- 在vsflex中,选中一行后对列表进行排序,排序后如何使这一行仍然被选中?
- 请问大家如何制作同时容纳图标和文字的工具栏?
Dim rs As New ADODB.RecordsetPrivate Sub Command1_Click()
Dim n As Integer
n = Val(Text1.Text)
cn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\test.mdb;Persist Security Info=False"
cn.Open
rs.CursorLocation = adUseClient
rs.Open "select * from TableName where f" & n & "='" & A(n) & "'", cn, 3, 3
Set DataGrid1.DataSource = rs
End Sub
您没看清说明,代码不对哟!“实现选取表中的6个字段
的内容与这条记录信息重复N(可变)个的记录呢?
例如条件重复N=4,既得到结果为表中的第1条”where f" & n & "='" & A(n) & "'"
不正确!不过,还是要谢谢您。
select * from 表 where (case when F1 in('政治','物理','化学','体育','地理','语文') then 1 else 0 end)+(case when F2 in('政治','物理','化学','体育','地理','语文') then 1 else 0 end)+(case when F3 in('政治','物理','化学','体育','地理','语文') then 1 else 0 end)+(case when F4 in('政治','物理','化学','体育','地理','语文') then 1 else 0 end)+(case when F5 in('政治','物理','化学','体育','地理','语文') then 1 else 0 end)+(case when F6 in('政治','物理','化学','体育','地理','语文') then 1 else 0 end)=4
如果可以,则"'政治','物理','化学','体育','地理','语文'"在外部构建,参数4也是即时构建生成但我运行结果是第二条也符合条件,不知是我理解错了还是你漏了
“where”后面的条件能否给讲一下,我不理解。
如果n=3,是不是可以这样写:
select * from 表 where (case when F1 in('政治','物理','化学','体育','地理','语文') then 1 else 0 end)+(case when F2 in('政治','物理','化学','体育','地理','语文') then 1 else 0 end)+(case when F3 in('政治','物理','化学','体育','地理','语文') then 1 else 0 end)+(case when F4 in('政治','物理','化学','体育','地理','语文') then 1 else 0 end)+(case when F5 in('政治','物理','化学','体育','地理','语文') then 1 else 0 end)+(case when F6 in('政治','物理','化学','体育','地理','语文') then 1 else 0 end)=3
请赐教!谢谢!!!
您写的代码在Microsoft SQL Server没问题,可我要在VB6通过ADO进行查询时,VB提示“where”后面的语句语法错误。请问我该如何编写?
另外如果把条件
“现有一条记录信息(例如为数组形式)
A(1) A(2) A(3) A(4) A(5) A(6)
政治 物理 化学 体育 地理 语文 ”
扩展到
“现有一条记录信息(例如为数据表形式)
A1 A2 A3 A4 A5 A6
政治 物理 化学 体育 地理 语文
... ... ... ... ... ... ”
又该如何编写?
请大家讨论一下,好吗!谢谢!!!
(case when F1 in('政治','物理','化学','体育','地理','语文') then 1 else 0 end)
如果 F1的内容在指定的六个变量中 则 标识成功1个,否则标志0
这样六个检测完之和为4则是有4个符合.把相关代码粘出才会知道出错的原因