MySQL像

时间:2018-02-20 08:26:24

标签: mysql

我试图使用like来加入一个表并返回一个随机结果。

基本上我只是加入域到子域格式...

例如: 域名:indonesian.dating 子域名(潜在匹配):asia.indonesian.dating或bandung.indonesian.dating等。

enter image description here

我一直在尝试的一个问题是:

SELECT b.domainname subdomain, a.*
FROM facebook AS a
JOIN domains AS b ON a.domainname LIKE '%testing.dating' ORDER BY RAND() LIMIT 1
WHERE 
a.datetime < NOW();

注意:facebook表有130个域,返回结果需要为130个facebook域中的每一个都有一个随机子域。例如:

indonesian.dating - &gt; bule.indonesian.dating africa.dating - &gt; lagos.africa.dating japanese.dating - &gt; tokyo.africa.dating。

如果再次运行查询,子域将会因为它们是随机的而改变...

这可能吗?我可以对子域进行单独查询,但更愿意使用一个域...

感谢 亚当

当前查询 - 分组尚未工作...... 注意:handle是一个唯一的值,比如facebook表中的域名......

SELECT * FROM (
SELECT b.domainname subdomain, a.*, a.handle
FROM facebook AS a
join domains b on b.domainname like concat("%",a.domainname)
WHERE 
a.datetime < NOW()
ORDER BY RAND()
) AS FBPages
GROUP BY handle

1 个答案:

答案 0 :(得分:1)

尝试重新排序查询:

SELECT b.domainname subdomain, a.*
FROM facebook AS a
JOIN domains AS b ON a.domainname LIKE concat('%', b.domainname)
WHERE 
a.datetime < NOW()
ORDER BY RAND() LIMIT 1;