我正在使用MSSQL Server2005。在我的数据库中,我有一个表 customerNames,其中有两列Id”和“5 g8 w6 }1 T( |2 B3 X
Name还有大约。1.000个结果。 . M8 \& }8 i+ D! D! d我正在创建一个功能,每次必须随机选择5个客户。谁能告诉我如何创建一个查询,每次查询都会随机获得5行(Id和Name)? 6 }# p N# Y5 ^' d5 ` ] 3 j$ w: D" ~# b9 b: O) M* T, t解决方案: * \: Y1 l1 Y" }, C3 g, G! l SELECT TOP 5 Id,Name FROM customerNamesORDER BY NEWID()换句话说,似乎每个人都可以访问这个页面,以获得更一般的答案:: j( D' Z( E0 `# Y, ?) Q
在SQL选择随机行使用MySQL选择随机行:SELECT column FROM tableORDER BY RAND()LIMIT 1使用PostgreSQL选择随机行:SELECT column FROM tableORDER BY RANDOM()LIMIT 1使用Microsoft SQL Server选择一个随机行:SELECT TOP 1 column FROM tableORDER BY NEWID()使用IBM DB2选择随机行SELECT column,RAND() as IDX FROM table ORDER BY IDX FETCH FIRST 1 ROWS ONLY使用Oracle选择随机记录:SELECT column FROM( SELECT column FROM tableORDER BY dbms_random.value )WHERE rownum = 1选择带sqlite的随机行:SELECT column FROM table ORDER BY RANDOM() LIMIT