作者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
推 PsMonkey:人家不是說他用過 union 了 ==.==== 01/31 19:14
→ dinos:可是我試可以耶(mysql 5.0). ps: d 要帶有 tblPky 這個欄位 01/31 22:24
推 asklove:排序後比id小的要 desc,比id大的要 asc,然後各取5筆 01/31 23:32
推 asklove:另外union是可以的,只是原PO可能忘了只能有1個分號? 01/31 23:33
→ blestadsl:在mssql中~最外面還要在包一個select.. 01/31 23:40
推 asklove:不過 limit 語法能在 mssql 裡面使用嗎? 02/01 00:16
推 wuwaiter:原PO是mysql...另外在ms sql中是不用多加select的 02/01 01:55
→ blestadsl:如果select 中有 order by 就需要了= = 02/02 13:05