[英]SQL combination of two tables
我對 sql 和 php 很陌生。 我基本上有 2 張桌子,一張是特定組的男性圖片,另一張是同一組女性的圖片。 我想創建一個表格,其中包含可以從這個男人和女人的數據庫中生成的所有可能的夫婦,以便該組的人可以對最有可能形成的夫婦進行投票。
一張表稱為“imagesmen”,有 2 列,image_id(autoincrement),filename; 另一個稱為“imageswomen”,有 2 列 image_id(autoincrement) 和文件名。
我想將它們組合到帶有 4 列的“couples”表中:“couple_id(autoinc), image_men_id, image_women_id, votes”。
最終目的是一個網站,其中隨機選擇男性和女性 2 人,人們可以投票“可能發生”或“不太可能發生”,“投票”欄增加 1 或減少 1。
放入我的 php 文件的正確 sql 語法是什么?
非常感謝!!
如果您使用的是 mySQL,您可以輕松地使用order by rand limit 1
來獲取單個隨機數據行。 從那里,您可以強制笛卡爾連接到另一個表並有效地從每個表中獲取隨機行:
select
a.id,
a.image,
b.id,
b.image
from
(
select
id,
image
from
maleTable
order by
rand()
limit 1
) a
join
(
select
id,
image
from
femaleTable
order by
rand()
limit 1
) b
on 1=1
獲得此信息后,您可以將數據存儲在另一個表中,以將人們提供的投票與以下結構相關聯:
tableVotes:
fID MID Votes
2 45 14
36 2 56
...
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.