私は重複しないで50のランダムなレコードをフェッチしたいと思います。テーブルからランダムなユニークなレコードを取得します
Table Name : table 1
Fields : test_id,test_name,test_phone.
重複なしでデータベースから50個のランダムなレコードをフェッチできるクエリを誰にでも提案できますか?
私は重複しないで50のランダムなレコードをフェッチしたいと思います。テーブルからランダムなユニークなレコードを取得します
Table Name : table 1
Fields : test_id,test_name,test_phone.
重複なしでデータベースから50個のランダムなレコードをフェッチできるクエリを誰にでも提案できますか?
試してみてください。
SELECT DISTINCT * FROM table_1 ORDER BY RAND() LIMIT 50;
彼らはユニークだことを確認してください、test_id
は自動インクリメントINT
であることを確認してください。あなたは何の疑いがある場合は
私はなぜtest_idが自動増分でなければならないのか知っているかもしれませんか?クエリのtest_idを渡すことはありません。 –
自動インクリメントは、その行が毎回一意であることを保証するためです。私は尋ねるべきではないかと思います。「複製」とはどういう意味ですか? –
私のtest_idがプライマリキーではなく、自動インクリメントに設定されていないと正しく実行されますか?私は私の現在の問題について適切な答えを得ましたが、私の知識のために、私は尋ねています。 –
この
SELECT DISTINCT * FROM table ORDER BY RAND() LIMIT 50
連絡先をお試しください。
これは50レコードを返しますが、ランダムではありません。 –
これはランダムなレコードを返すためには、rand()によって順序付けされるべきです。 – Zlatan
は、それが動作
SELECT distinct * FROM `table_1` order by rand() limit 50
次のクエリを使用します。
あなたはそれのためにいくつかのストアドプロシージャを試してみませんか? – Kris