【发布时间】:2011-12-11 13:25:49
【问题描述】:
我有以下查询,想在$find 中的每个值对name_re_all 进行处理,我的查询中的情况如何?
例如: name_re_all 为:
ROW 3:11111 22222 33333 44444ROW 2:55555 66666 77777ROW 1:88888 99999 112233 445566
如果值 $find 是 11111,则显示第 3 行的所有值:11111 22222 33333 44444
或者
如果值 $find 是 66666 显示所有值第 2 行:55555 66666 77777
或者
如果值 $find 是 33333 显示所有值第 3 行:11111 22222 33333 44444
或者
如果值 $find 是 778899 显示所有值第 1 行:88888 99999 112233 445566
或者
和...
$query = $this -> db -> query('
SELECT
@rownum := @rownum + 1 rownum,
tour_foreign.id,
tour_foreign.name,
tour_foreign.airline,
MIN(tour_foreign_residence.name_re) AS name_re,
tour_foreign.service,
tour_foreign.date_go,
tour_foreign.date_back,
tour_foreign.term,
tour_foreign.useradmin_submit,
tour_foreign.date_submit,
GROUP_CONCAT( tour_foreign_residence.name_re
ORDER BY tour_foreign_residence.name_re
SEPARATOR "، "
) AS name_re_all
FROM tour_foreign
INNER JOIN tour_foreign_residence
ON ( tour_foreign.id = tour_foreign_residence.relation )
JOIN (SELECT @rownum := 0) r
WHERE tour_foreign.name LIKE "%' . $find . '%"
GROUP BY tour_foreign.id
HAVING name_re_all LIKE "%' . $find . '%"'
);
我在数据库中的表:
【问题讨论】:
-
请张贴表结构和一些(代表性)示例数据。
-
我把表格放在帖子里,请看。
-
呸,又是这个mysterious query!同一个查询后,这些人都是谁?!
-
@Col。弹片——这只是一个例子
-
@Wall Street 至少有 3 个不同的帐户(Alicia Cibrian、Nicole Spears、Jennifer Anthony 和这个)发布了同样的查询,并且英语水平相同。请尝试您给出的所有答案,我不敢相信没有人工作;在这种情况下,那么问题就有问题了,并且在没有重大变化的情况下重新发布它对您没有帮助。
标签: php mysql join group-concat