I want to select a random row from the realm table. Something like -
SELECT * FROM table ORDER BY RANDOM() LIMIT 1;
I want to select a random row from the realm table. Something like -
SELECT * FROM table ORDER BY RANDOM() LIMIT 1;
 
    
    Something like this would do, yes?
Random random = new Random();
RealmResults<YourTable> list = realm.where(YourTable.class).findAll();
YourTable yourTable = list.get(random.nextInt(list.size()));
 
    
    Depends on what you want to do:
Do you want to get a random row from a table? Or A (random) row from a random table?
I guess you mean the former: If you have an id in your table, you could just:
SELECT * FROM table b WHERE id = FLOOR(RAND() * (3 - 0 + 1)) + 0
You should place a min and max here like so:
FLOOR(RAND() * (<max> - <min> + 1)) + <min>
(as found here)
SWIFT 5
I do it this way and it works perfect:
let results      = realm.objects(MyObject.self)        // Get all the objects
let randomIndex  = Int.random(in: 0 ..< results.count) // Get a random number within the number of objects returned
let randomObject = results[randomIndex]                // Get a random object
 
    
    Here's how I do it in .NET, takes 7ms for 70K entries.
    public IEnumerable<Entry> GetRandomEntries()
    {
        var randomizer = new Random();
        var entries = GetRealmInstance().All<Entry>().AsEnumerable();
        // Takes random entries and shuffles them to break the natural order
        var randomEntries = entries
            .OrderBy(x => randomizer.Next(0, DbQueryRandomEntriesLimit))
            .Take(DbQueryRandomEntriesLimit)
            .OrderBy(entry => entry.GetHashCode());
        return randomEntries;
    }
I use AsEnumerable() to allow using .Select in LINQ
 
    
    String query =String.format("SELECT * FROM realm ORDER BY %d LIMIT 1", random());
databaseHelper = new DatabaseHelper(this);
        database = databaseHelper.getWritableDatabase();
Cursor cursor = database.execSQL(query);
It works assuming that you have a class DatabaseHelper which extends SQLiteOpenHelper
