【发布时间】:2011-10-18 19:24:22
【问题描述】:
我想在下面的查询选择中使用rownum,我在下面的第一个查询中使用它,但不知道在下面的第二个查询中应该如何使用它?
第一个有效的查询:
$this -> db -> query("
SELECT @rownum := @rownum + 1 rownum,
t.*
FROM (SELECT *
FROM table
ORDER BY id DESC
LIMIT $offset, $coun) t,
(SELECT @rownum := 0) r
")
我在foreach上的html代码中回显rownum为:echo intval($row -> rownum + $offset)
第二个查询(我想在这个查询中使用它,这个查询怎么样?):
$this -> db -> query("
SELECT tour_foreign.id,
tour_foreign.name,
tour_foreign_residence.name_re,
tour_foreign.service,
tour_foreign.date_go,
tour_foreign.date_back,
tour_foreign.term
FROM tour_foreign
INNER JOIN tour_foreign_residence
ON ( tour_foreign.id = tour_foreign_residence.relation )
WHERE tour_foreign.name LIKE "%' . $find . '%"
OR tour_foreign_residence.name_re LIKE "%' . $find . '%"
")
【问题讨论】:
-
在 select 语句中读取和分配相同的变量是明确未定义的行为,请参阅有关这些主题的(措辞不好的)手册。从 8.0 开始,可以使用窗口函数。
标签: php mysql codeigniter join