MySql - 找到一行,得到一个值然后使用下面获得的随机记录

时间:2012-03-25 15:32:17

标签: mysql

我搜索了论坛但找不到答案。也许这是一个明显的答案,但我在mysql中迈出了第一步。

这很有效:

SELECT * FROM `uniquein_jo163`.`jos_facileforms_subrecords` 
WHERE name = 'overallexperience' ORDER BY RAND() LIMIT 0,1;

但是我想让上面的代码工作,出现的行,有一个名为record的列 - 得到它的值然后使用获得的记录的值运行上面的查询。

可以这样做吗? 谢谢

确定。我解释得更多。所有在同一张桌子上。我的表很复杂(至少在我看来)。该表从许多Web表单中获取数据(使用joomla上的breezingforms)

第一步: 列标题是 - 名称 所以搜索名称值等于'overallexperience'的表格

图像1显示了此查询的结果

第二步: 找到这一行后,从同一行获取另一列名为record的值。在这种情况下,它是50

第3步: 使用搜索字符串再次执行select *查询,其中record =在第二步中获得的值。

在第3步结束时,我将记录许多行=获得的值。

图像2显示了此结果

现在我需要在网页上显示firstname,lastname,country,overallexperience等的值。 可以这样做吗?![image1] [1]![image2] [2]

我不允许发布图片。 所以,我尝试使用链接[image1] [1]无法正常工作

请访问http://uniqueindiatour.com/image1.png 并访问 http://uniqueindiatour.com/image2.png

1 个答案:

答案 0 :(得分:0)

你是说这个?

SELECT
    *
FROM
    `uniquein_jo163`.`jos_facileforms_subrecords`
WHERE
    `name` = (
        SELECT
            `record`
        FROM
            `uniquein_jo163`.`jos_facileforms_subrecords`
        WHERE
            `name` = 'overallexperience'
        ORDER BY
            RAND()
        LIMIT 1
    )