SQL随机查询

我们经常想在一个数据表中随机地选取出数据来,比如随机生成考试试卷等。
利用 SQL Server 的 NewID() 方法就可以很轻松地达到这个目的。

NewID() 方法返回一个 GUID,如:EE95A489-B721-4E8A-8171-3CA8CB6AD9E4
在 select 表的时候,再增加一列为 NewID() 就可以了。
SQL 语句:select *, NewID() from table
这样每条记录后就会有一个随机的 GUID 值,我们再按这个 GUID 排一下序就可以达到乱序的效果。
SQL 语句:select *, NewID() as random from table order by random

我们要想随机取出 10 条数据,只要加上 TOP 10 就行了:
SQL 语句:select top 10 *, NewID() as random from table order by random

筛选唯一记录
SELECT * FROM tablename ORDER BY NEWID()

这个方法只适用于 SQL Server。
原文

一下为自己创作
比如我们插入了一堆数据,然后我们想要获得随机4条信息:

select top 4 *,NEWID() as random from td_music order by  random

然后我们可以将信息传递给前端,做一个不断刷新的功能:、

window.setInterval(function () {
                //每5秒搜索一次
                CheckLove();
            }, 5000);

这个时候我们需要使用ajax功能,来向后台发送请求,得到新的数据:

function CheckLove() {
            //调用后台方法
            var pd = { "t": "GetLove" };
            $.ajax({
                type: "post",
                url: "tools/Handler.ashx",
                data: pd,
                dataType: "json",
                success: function (data) {
                    if (data.status != "-1") {
                        //滞空div
                        $('#youlove').empty();
                        //格式化后台传递过来的数据
                        var dataobj = data.msg;
                        //循环数据
                        $.each(dataobj, function (i, item) {
                            //设置html文本
                            var html = '
+ item.musicPath + '\')">' + ' + item.imgs + '" style="width:160px;height:160px; cursor:pointer;" />' + '
' + item.musicName + '
'
+ '
' + item.singerName + '
'
+ '
'
; //向div中添加html $('#youlove').append(html); }); } }, error: function (XMLHttpRequest, textStatus, errorThrown) { } }); }

你可能感兴趣的:(sqlhelper)