作者dinos (守护神)
看板Database
标题Re: [SQL ] 抓 某ID 上下5笔资料
时间Sun Jan 31 18:54:35 2010
※ 引述《ot32em (reverse(wasefo);)》之铭言:
: 原本是 select `field` from `table` where `id` >= '$id' limit 0,4;
: select `field` from `table` where `id` < '$id' limit 0,5;
: 有没有一句的版本啊
: 我有用union , 可是好像where一次而已 limit 也只能一次
: limit 设 -4, 5 这蠢方法 我也试过XD
: 感谢大家
: 用的是 mysql
(SELECT d FROM `tbl` WHERE tblPky<$assign ORDER BY tblPky DESC LIMIT $n1) UNION
(SELECT d FROM `tbl` WHERE tblPky>$assign ORDER BY tblPky LIMIT $n2)
ORDER BY tblPky
这样不行吗 @@?
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 211.76.137.169
1F:推 PsMonkey:人家不是说他用过 union 了 ==.==== 01/31 19:14
2F:→ dinos:可是我试可以耶(mysql 5.0). ps: d 要带有 tblPky 这个栏位 01/31 22:24
3F:推 asklove:排序後比id小的要 desc,比id大的要 asc,然後各取5笔 01/31 23:32
4F:推 asklove:另外union是可以的,只是原PO可能忘了只能有1个分号? 01/31 23:33
5F:→ blestadsl:在mssql中~最外面还要在包一个select.. 01/31 23:40
6F:推 asklove:不过 limit 语法能在 mssql 里面使用吗? 02/01 00:16
7F:推 wuwaiter:原PO是mysql...另外在ms sql中是不用多加select的 02/01 01:55
8F:→ blestadsl:如果select 中有 order by 就需要了= = 02/02 13:05