AVG(price) 和你的Max(MyCount)很类似吧
//ODBC open SQL server database
CDatabase db;
db.OpenEx("DRIVER={SQL Server};Server=Cell;DATABASE=zhg;UID=sa;PWD=;");//change Cell to your computer name
//change zhg to your database name
CRecordset rs(&db);
rs.Open(AFX_DB_USE_DEFAULT_TYPE,"select type,AVG(price)'average price' From title  where type<>'business' group by type");
while(rs.IsEOF()==false)
{
CString str;
CString strtype;
rs.GetFieldValue((short)0,strtype);
CDBVariant varprice;
rs.GetFieldValue(1,varprice);
str.Format("type:%s,avg(price):%f",strtype,varprice.m_dblVal);
AfxMessageBox(str);
rs.MoveNext();
}
rs.Close();
db.Close();

解决方案 »

  1.   

    数据库和记录集的打开同上RecRs.GetFieldValue("编号",varValue,DEFAULT_FIELD_TYPE);
    if(varValue.m_dwType==DBVT_STRING)//数据类型
    {
    ZeroMemory(tnppno,5);
    strncpy(tnppno,varValue.m_pstring->GetBuffer(4),4);//根据长度取值
    varValue.m_pstring->ReleaseBuffer();
    }
      

  2.   

    谢谢二位,各打50大板,微分笑纳。
    我以前倒是知道用Recordset:GetFieldValue,还可直接用RFX直接绑定,
    只是一时不知用ODBC API如何写。现已解决。