[英]Subquery from the same table
表結構
[place]
p.place_id
p.name
p.image
p.address
p.phone
p.website
p.description
p.lng
p.lat
p.distance
p.last_update
p.is_ad
SELECT DISTINCT p.* FROM place p
我需要選擇所有記錄,其中包含 2 個帶有標志“is_ad”= 1 的 RANDOM 記錄
所以例如:
記錄:
1 is_ad 0
2 is_ad 1
3 is_ad 0
4 is_ad 1
5 is_ad 0
6 is_ad 1
7 is_ad 0
顯示隨機兩條記錄第一個位置
1 is_ad 1
6 is_ad 1
3 is_ad 0
4 is_ad 0
5 is_ad 0
7 is_ad 0
7 is_ad 0
它應該顯示在第一個位置
謝謝你。
(SELECT * FROM place where is_ad = 1 order by rand() limit 2)
union all
(SELECT * FROM place where is_ad <> 1 order by place_id)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.