我有两个表,一个表用于静止图像,一个表具有此属性,两者都链接在一起,因此一个属性不能有图片。您是否要“选择”我可以选择所有属性的地方,而只是此属性的随机图片。这该怎么做?

为了最好地说明,我从图像表中为表中具有静止图像的每个记录选择一个随机图像。想要随机选择。我能做的就是为银行资产的每个记录选择所有图像。我只希望每个记录imovel都有各自的随机图像。

sql如下:

select distinct

    imovel.nome as 'NOME',
    imovel.valor as 'VALOR',
    imovel.quarto as 'QUARTO',
    imovel.suite as 'SUITE',

    cidade.nome as 'CIDADE',
    bairro.nome as 'BAIRRO',
    (select distinct nome from tabimagem img where img.cdimovel = imagem.cdimovel order by rand() limit 1) as 'IMAGEM'

from tabimovel imovel

    inner join tabcidade cidade on imovel.cdcidade = cidade.codigo
    inner join tabbairro bairro on imovel.cdBairro = bairro.codigo
    inner join tabimagem imagem on imagem.cdImovel = imovel.codigo

order by rand()

最佳答案

在SQL Server中,在TOP 1之后添加SELECT,并按ORDER BY NEWID()顺序订购。

在MySQL中,顺序应为ORDER BY RAND(),后跟LIMIT 1

那应该工作。

关于mysql - 选择记录条件随机#MySQL,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/19576233/

10-12 05:00