SQLSERVER 两表关联查询分页显示 SQL语句 10
$sql="selecttop".$page_size."h.[医院名称],k.[科室名称],k.[科室编号],k.id,k.kidfrom[医院表]ashrightjo...
$sql = "select top ".$page_size." h.[医院名称],k.[科室名称],k.[科室编号],k.id,k.kid from [医院表] as h right join [科室表] as k on k.hid = h.hid WHERE k.id not in(SELECT TOP ".$page_size*($page_num-1)." k.id FROM [科室表])";
$page_size:页大小
$page_num:当前页
麻烦帮我看看 SQL语句有什么问题 现在无法翻页,一翻页整个表格都没了,最好能写个正确的给我 展开
$page_size:页大小
$page_num:当前页
麻烦帮我看看 SQL语句有什么问题 现在无法翻页,一翻页整个表格都没了,最好能写个正确的给我 展开
1个回答
展开全部
如果你用的是SQL2008以后的数据库版本,可以这样
SELECT ROW_NUMBER() OVER (ORDER BY B.HID DESC) BH, B.*
FROM
(SELECT h.[医院名称],k.[科室名称],k.[科室编号],k.id,k.kid
from [医院表] as h right join [科室表] as k on k.hid = h.hid
) B
WHERE BH BETWEEN ($page_size * $page_num) AND ($page_size * $page_num +$page_size)
SELECT ROW_NUMBER() OVER (ORDER BY B.HID DESC) BH, B.*
FROM
(SELECT h.[医院名称],k.[科室名称],k.[科室编号],k.id,k.kid
from [医院表] as h right join [科室表] as k on k.hid = h.hid
) B
WHERE BH BETWEEN ($page_size * $page_num) AND ($page_size * $page_num +$page_size)
更多追问追答
追问
我的是2005的
追答
2005好像已经有这个函数了,你可以试下,我没实际数据,你自己测试下吧
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询