代码之家  ›  专栏  ›  技术社区  ›  Lonnie Best

如何从普适PSQL表中选择随机行

  •  0
  • Lonnie Best  · 技术社区  · 6 年前

    Pervasive PSQL (具体来说)使用SQL SELECT语句,如何从没有数字ID的表中选择随机行?

    1 回复  |  直到 6 年前
        1
  •  1
  •   mirtheil    6 年前

    这个 似乎 使用PSQLv11.30为我工作。

    create table chartest (f1 char (10), f2 char(10), f3 char(10));
    insert into chartest values ('a','a','a');
    insert into chartest values ('b','b','b');
    insert into chartest values ('c','c','c');
    insert into chartest values ('d','d','d');
    insert into chartest values ('e','e','e');
    insert into chartest values ('f','f','f');
    select top 1 * from chartest order by newid()
    

    我跑了几次,得到了:

    <<<<<<<<<<<<<<<<<<<<<<<<
    f1           f2           f3        
    ==========   ==========   ==========
    e            e            e         
    1 row was affected.
    >>>>>>>>>>>>>>>>>>>>>>>>
    
    <<<<<<<<<<<<<<<<<<<<<<<<
    f1           f2           f3        
    ==========   ==========   ==========
    c            c            c         
    1 row was affected.
    >>>>>>>>>>>>>>>>>>>>>>>>
    
    <<<<<<<<<<<<<<<<<<<<<<<<
    f1           f2           f3        
    ==========   ==========   ==========
    b            b            b         
    1 row was affected.
    >>>>>>>>>>>>>>>>>>>>>>>>
    
    <<<<<<<<<<<<<<<<<<<<<<<<
    f1           f2           f3        
    ==========   ==========   ==========
    f            f            f         
    1 row was affected.
    >>>>>>>>>>>>>>>>>>>>>>>>