2017-07-19 113 views
0

我有一個email_address作爲主鍵的表,並且表中沒有id列。在postgres中使用like查詢獲取隨機記錄

所以,只要我打的查詢關鍵詞,比如

select email_address from data where email_address like '%@gmail.com' limit 10 

它給結果按字母順序意味着所有的電子郵件ID開頭的(如果存在)。

但我不想要一個像字母順序,我要像導致

email_address 
___________________ 
[email protected] 
[email protected] 
[email protected] 
[email protected] 

隨機挑選與gmail.com結尾,而不是插入順序或不按字母順序排列的電子郵件地址。

注:我有這樣的結果1000的每個字母開始的時候我只選擇100,然後我想,不僅所有的結果以「A」

回答

-1

如果你命令他們隨機,然後選擇第一個前10名結果我猜這可以工作。這將是這樣的:

SELECT email_address FROM data 
WHERE email_address LIKE '%@gmail.com' 
ORDER BY RANDOM() 
LIMIT 10 
+0

我已經試過這個,不工作 –

+0

@KushalJain什麼_Not working_ mean? –

+0

對不起,它的工作..它是我的錯誤,當我檢查我的數據庫它有所有的電子郵件以'a'開頭。現在它的工作 –