例如,我的数据库中有这么多域名
www.yahoo.com/duniya.html
www.yahoo.com/hero.html
www.123musiq.com/
www.123musiq.com/home.html
www.123musiq.com/horo.html
www.123musiq.com/yuva.html
www.sensongs.com/
www.sensongs.com/hindi.html
www.sensongs.com/yuva.html
www.sensongs.com/duniya.html
www.sensongs.pk/duniya1.html
我需要对它们进行排序,首先是 2 个来自 yahoo,然后是 2 个来自 123musiq,然后是 2 个来自 sensongs。我怎样才能做到这一点?在 mysql 或 PHP 中?我知道要获取域名,我需要知道如何从每个域中排序 2?
我正在使用匹配方法
期望输出
www.yahoo.com/duniya.html
www.yahoo.com/hero.html
www.123musiq.com/
www.123musiq.com/home.html
www.sensongs.com/
www.sensongs.com/hindi.html
我使用以下代码
选择 x.url
FROM(选择 t.url,
案子
当@domain = SUBSTRING_INDEX(t.url, '/', 1) 那么@rownum := @rownum + 1
否则 @rownum := 1
END AS 排名,
@domain := SUBSTRING_INDEX(t.url, '/', 1)
从 URL2 t
JOIN (SELECT @rownum := 0, @domain := '') r
ORDER BY SUBSTRING_INDEX(t.url, '/', 1)) X
WHERE x.rank <= 2 AND MATCH(teet,url,html) 反对 ('account');它显示错误
查询: SELECT x.url FROM (SELECT t.url, CASE WHEN @domain = SUBSTRING_INDEX(t.url, '/', 1) THEN @row... 错误代码:1054 'where 子句'中的未知列'teet'
但是 Teet 是我的 URL2 表中的一列