on 04-11-2017 2:23 PM
Is there some way to select a specified number of random rows from a table?
Something lieke on SQLServer?
SELECT TOP 10 PERCENT *
FROM Table1
ORDER BY NEWID()
See also TABLESAMPLE option in SELECT from SAP HANA SQL and System Views Reference:
Applies the SELECT statement to a random sample of the table data.
<tablesample_clause> ::=
TABLESAMPLE [BERNOULLI | SYSTEM] (<sample_size>)
<sample_size> ::= <exact_numeric_literal>
<sample_size> specifies the percentage of the table to be returned as a sample.
Values must be greater than 0 and less than or equal to 100. (100 returns the complete table). The goal of the TABLESAMPLE operator is to allow queries to be executed over ad-hoc random samples of tables. Samples are computed uniformly over rows in a columnar base table. Samples can either be uniform random samples (SYSTEM sampling) or uniform and independent random samples (BERNOULLI sampling). SYSTEM sampling exploits the lack of the independence requirement by sampling blocks of rows at a time, while SYSTEM sampling offers performance advantages over BERNOULLI sampling, it comes at the cost of larger variance in sample size.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
SELECT * FROM Table1 ORDER BY RAND() LIMIT 10;
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
90 | |
10 | |
10 | |
10 | |
7 | |
7 | |
6 | |
5 | |
4 | |
3 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.