string strSQL = string.Format("SELECT * FROM VIEW_CLASS_TEACHER WHERE ISDELETE='0' AND STATE_STATUS='1' AND ISRECOMMEND='1' ORDER BY {0}", CLASS_TEACHER.DefaultOrderByExpression);
int iRowCount = 0;
DataSet ds = SqlHelper.ExecuteTop(strSQL,6, ref iRowCount);
               
               
ListView1.DataSource = ds;
ListView1.DataBind();
现在需要的是在数据源中随机取6个值,绑定到ListView1中,怎么弄?请教一下

解决方案 »

  1.   

    SELECT top 6 * FROM VIEW_CLASS_TEACHER WHERE ISDELETE='0' AND STATE_STATUS='1' AND ISRECOMMEND='1' ORDER BY newid()
      

  2.   

    报错  ,未找到From关键字,,什么意思
      

  3.   

    汗!~未找到from关键字!~没见过这个错误
      

  4.   

    额这个就不知道了你搜下oracel中随机取数据的函数!~
      

  5.   

    有两种方法:方法1:
    SELECT * FROM VIEW_CLASS_TEACHER SAMPLE(1) WHERE ISDELETE='0' AND STATE_STATUS='1' AND ISRECOMMEND='1' AND ROWNUM<6方法2:SELECT * FROM (SELECT * FROM VIEW_CLASS_TEACHER WHERE  ISDELETE='0' AND STATE_STATUS='1' AND ISRECOMMEND='1'  ORDER BY DBMS_RANDOM.VALUE) WHERE ROWNUM<6如果你的VIEW_CLASS_TEACHER是个table,那两种方法都可以用
    如果是View,那么只能用方法2方法2速度一般情况下,非常慢。
      

  6.   

    ORDER BY newid() 取随即数