如果要全部数据则可以
select * from table T1 where 字段 = (select max(字段) from table T2 where T1.字段2 = T2.字段2)
或
select * from table T1 where not exists(select * from table T2 where T1.字段2 = T2.字段2 and T1.字段 <T2.字段
如果只是数据行数则可以
select count(distinct 字段)from table
具体做法:新建工程时选数据工程,此时VB6集成调试环境左边工具箱内已加载了有关数据库编程必须的控件。
然后在FORM1窗体中添加ADODC控件和DATAGRID控件,将DATAGRID1的属性DATASOURCE选ADODC1,打开ADODC1控件属性页使用连接字符串,选生成,在提供者选项中选MICROSOFT jet 4.0 OLE DB Provider,然后按要求连接数据库等。在ADODC1控件属性页使用连接字符串空白文本窗口中就有一长串字符串,注意该字符串可复制到程序代码用于编程。ADODC1控件属性页的数据源内有命令文本(SQL)编写窗口可编写SQL查询语言。该窗口的SQL语句可复制到程序代码用于编程。
SQL查询语言主要结构为:
Select 查询字段 from 表名 Where 查询条件语句 [排序语句或分组语句]
查询字段必须分别用(西文)逗号分开或就用一个*号代替,上述查询中排序语句建议最好应用。
SQL查询语言如有错程序运行时告诉你出错,作相应改动即可。本人一般先按上述连接,SQL用"SELECT * FROM TabelName"作调试,无问题,用一个按钮孔件将前述需复制的连接字符串和SQL查询语言先复制于按钮控件的CLICK事件中备着,以便放着以后使用。然后删去ADODC1孔件,再添加ADODC1控件再添其他内容。
代码如下,请按你实际要求修改,
Private Sub Form_Load()
Text1 = ""
With Adodc1
Adodc1.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0Data Source=E:\db1.mdbPersist Security Info=False"
Adodc1.RecordSource = "select name from b1 order by name"
Adodc1.Refresh
DataGrid1.Refresh
End With
End Sub
Private Sub Text1_Change()
Adodc1.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0Data Source=E:\db1.mdbPersist Security Info=False"
Adodc1.RecordSource = "select name from b1 where name >='" &Text1 &"' order by name"
Adodc1.Refresh'对查询更新
DataGrid1.Refresh
End Sub
补充代码如下,Tabel1是你需查询的数据表:
Private Sub Command1_Click()
Adodc1.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0Data Source=E:\db1.mdbPersist Security Info=False"
Adodc1.RecordSource = "select * from Tabel1 where 部门 ='" &"车间" &"'"
Adodc1.Refresh'对查询更新
DataGrid1.Refresh
End Sub
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)