我表books
包含圖像,語言,信仰。我'讓信仰不同的價值觀與如何選擇與隨機列MYSQL不同?
SELECT DISTINCT faith, language from books;
,其獲取的信仰系列(15結果),但我想獲取沿image
太多,但隨機。所以結果可以顯示隨機圖像的信心。我該如何做,請建議。
我表books
包含圖像,語言,信仰。我'讓信仰不同的價值觀與如何選擇與隨機列MYSQL不同?
SELECT DISTINCT faith, language from books;
,其獲取的信仰系列(15結果),但我想獲取沿image
太多,但隨機。所以結果可以顯示隨機圖像的信心。我該如何做,請建議。
查詢
select distinct faith, language from books;
選擇從表中不同的信仰,語言的組合。那麼,你的表中包含了相同的信仰和語言兩個條目
Faith Language Image 1 EN img1 1 EN img2 1 FR img3 1 FR img4
你的結果會包含每個組合只有一次:
Faith Language 1 EN 1 FR
它不是從你的問題明確,但你的意思是用什麼隨機圖像。這裏是你如何得到一個信仰,語言組合匹配的圖像隨機選取的一個:
select faith, language, image
from books
group by faith, language;
結果看起來是這樣的:
Faith Language Image 1 EN img2 1 FR img3
的原因是,我們彙總行。在GROUP BY子句中,我們說我們希望每個信念和語言都有一個結果行,但是我們也選擇了Image,並且沒有指定我們希望每個組看到哪個結果行(我們可以使用MIN或MAX等集合函數),所以我們只獲得一個匹配由DBMS任意挑選的信仰 - 語言組合的圖像。
這已經是你想要的嗎?
我很欣賞你的意見,但這不可行,請讓我多解釋一下。我有不同的'信仰'列的'書'表中有很多行。有很多書籍都是用自己的書本圖片來表達信仰的。現在我從書桌上獲取所有的信仰,我想爲信仰設置一個隨機的圖像,可以有100本書反對自己。每次執行查詢時,信仰將保持不變,但圖像應每次隨機更改 例如 - (信仰:宗教|留下語言。 – RanaHaroon
謝謝大家,我得到了解決,從
SELECT r.faith,
(SELECT r1.image FROM books AS r1 WHERE r.faith=r1.faith ORDER BY rand() LIMIT 1) AS image FROM books AS r GROUP BY r.faith;
它取不同字段1faith
與對執行的每個信仰每次查詢隨機域2圖像。
這將涉及兩個查詢,或一個特別醜陋的查詢。 – tadman
您可以通過該查詢獲得不同的信仰和語言值。 – jarlh
兩個'SELECTS'或查詢?請你提一下樣品。 – RanaHaroon