想优先 Rand() 出来 'phome_ecms_news' 表的 classid limit 1 (并且符合) isLast(终极栏目) = 1然后再在 表 'phome_enewsClass' 里面进行 RAND() limit 1
下面sql语句错误..不会写的情况下,只有表述一下思想了.
SELECT * FROM 'phome_ecms_news' WHERE classid = (SELECT classid FROM 'phome_enewsClass' where islast=1 RAND() limit 1) RAND() limit 1;
下面sql语句错误..不会写的情况下,只有表述一下思想了.
SELECT * FROM 'phome_ecms_news' WHERE classid = (SELECT classid FROM 'phome_enewsClass' where islast=1 RAND() limit 1) RAND() limit 1;
(
SELECT classid FROM 'phome_enewsClass' where islast=1 RAND() limit 1
)
RAND() limit 1;
对我有用[0] 丢个板砖[0] 引用 举报 管理 TOP 回复次数:0
(
SELECT classid FROM 'phome_enewsClass' where islast=1 ORDER BY RAND() limit 1
)
ORDER BY RAND() limit 1;
SELECT *
FROM 'phome_ecms_news'
WHERE classid
IN (SELECT classid
FROM 'phome_enewsClass'
WHERE islast =1
ORDER BY RAND( )
LIMIT 1
)
ORDER BY RAND( )
LIMIT 1 ;#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''phome_ecms_news' WHERE classid IN (SELECT classid FROM 'phome_enewsClass' where' at line 1
WHERE classid in (1,10)
ORDER BY RAND() LIMIT 1
`phome_ecms_news` 子查询的里面的也一样