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 = '<div style="width:160px;height:200px;float:left;margin-left:52px;" "lisen(\'' + item.musicPath + '\')">' +
                                '   <img src="' + item.imgs + '" style="width:160px;height:160px; cursor:pointer;" />' +
                                '   <div style="text-align:center;">' + item.musicName + '</div>' +
                                '   <div style="text-align:center;font-size:8px;">' + item.singerName + '</div>' +
                                '</div>';
                            //向div中添加html
                            $('#youlove').append(html);
                        });
                    }
                },
                error: function (XMLHttpRequest, textStatus, errorThrown) {
                }
            });
        }

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值