mirror of
https://github.com/nsnail/FreeSql.git
synced 2025-06-19 04:18:16 +08:00
- 增加 ISelect.OrderByRandom() 随机排序适配;
This commit is contained in:
@ -818,6 +818,16 @@ namespace FreeSql.Tests.Odbc.Dameng
|
||||
{
|
||||
var sql = select.Offset(10).OrderBy(a => new Random().NextDouble()).ToList();
|
||||
}
|
||||
[Fact]
|
||||
public void OrderByRandom()
|
||||
{
|
||||
var t1 = select.OrderByRandom().Limit(10).ToSql("1");
|
||||
Assert.Equal(@"SELECT t.* FROM (SELECT 1
|
||||
FROM ""TB_TOPIC22"" a
|
||||
ORDER BY dbms_random.value) t WHERE ROWNUM < 11", t1);
|
||||
var t2 = select.OrderByRandom().Limit(10).ToList();
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void Skip_Offset()
|
||||
{
|
||||
|
@ -783,6 +783,17 @@ namespace FreeSql.Tests.Odbc.KingbaseES
|
||||
{
|
||||
var sql = select.Offset(10).OrderBy(a => new Random().NextDouble()).ToList();
|
||||
}
|
||||
[Fact]
|
||||
public void OrderByRandom()
|
||||
{
|
||||
var t1 = select.OrderByRandom().Limit(10).ToSql("1");
|
||||
Assert.Equal(@"SELECT 1
|
||||
FROM ""TB_TOPIC22"" a
|
||||
ORDER BY random()
|
||||
limit 10", t1);
|
||||
var t2 = select.OrderByRandom().Limit(10).ToList();
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void Skip_Offset()
|
||||
{
|
||||
|
@ -903,6 +903,17 @@ namespace FreeSql.Tests.Odbc.MySql
|
||||
{
|
||||
var sql = select.OrderBy(a => new Random().NextDouble()).ToList();
|
||||
}
|
||||
[Fact]
|
||||
public void OrderByRandom()
|
||||
{
|
||||
var t1 = select.OrderByRandom().Limit(10).ToSql("1");
|
||||
Assert.Equal(@"SELECT 1
|
||||
FROM `tb_topic` a
|
||||
ORDER BY rand()
|
||||
limit 0,10", t1);
|
||||
var t2 = select.OrderByRandom().Limit(10).ToList();
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void Skip_Offset()
|
||||
{
|
||||
|
@ -819,6 +819,16 @@ namespace FreeSql.Tests.Odbc.Oracle
|
||||
{
|
||||
var sql = select.Offset(10).OrderBy(a => new Random().NextDouble()).ToList();
|
||||
}
|
||||
[Fact]
|
||||
public void OrderByRandom()
|
||||
{
|
||||
var t1 = select.OrderByRandom().Limit(10).ToSql("1");
|
||||
Assert.Equal(@"SELECT t.* FROM (SELECT 1
|
||||
FROM ""TB_TOPIC22"" a
|
||||
ORDER BY dbms_random.value) t WHERE ROWNUM < 11", t1);
|
||||
var t2 = select.OrderByRandom().Limit(10).ToList();
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void Skip_Offset()
|
||||
{
|
||||
|
@ -879,6 +879,17 @@ namespace FreeSql.Tests.Odbc.PostgreSQL
|
||||
{
|
||||
var sql = select.OrderBy(a => new Random().NextDouble()).ToList();
|
||||
}
|
||||
[Fact]
|
||||
public void OrderByRandom()
|
||||
{
|
||||
var t1 = select.OrderByRandom().Limit(10).ToSql("1");
|
||||
Assert.Equal(@"SELECT 1
|
||||
FROM ""tb_topic"" a
|
||||
ORDER BY random()
|
||||
limit 10", t1);
|
||||
var t2 = select.OrderByRandom().Limit(10).ToList();
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void Skip_Offset()
|
||||
{
|
||||
|
@ -774,6 +774,16 @@ namespace FreeSql.Tests.Odbc.SqlServer
|
||||
{
|
||||
var sql = select.OrderBy(a => new Random().NextDouble()).ToList();
|
||||
}
|
||||
[Fact]
|
||||
public void OrderByRandom()
|
||||
{
|
||||
var t1 = select.OrderByRandom().Limit(10).ToSql("1");
|
||||
Assert.Equal(@"SELECT TOP 10 1
|
||||
FROM [tb_topic22] a
|
||||
ORDER BY newid()", t1);
|
||||
var t2 = select.OrderByRandom().Limit(10).ToList();
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void Skip_Offset()
|
||||
{
|
||||
|
Reference in New Issue
Block a user