[英]How do I ignore a single row in a query result using SQL or PHP?
我可以以某种方式忽略最早的帖子吗? 使用SQL还是PHP?
SELECT subject, date
FROM posts
WHERE id = $id
ORDER BY date DESC
while ($row = mysql_fetch_array($query)) {
干杯
您可能编写了一些复杂的sql来做到这一点,或者您可以在php中完成它:
$first = true;
while ($row = mysql_fetch_array($query)) {
if ( $first ) {
$first = false;
continue;
}
// Process rows here
}
我没有什么可以测试的,但是可以吗?
SELECT subject, date
FROM posts
WHERE id = $id
OFFSET 1
ORDER BY date DESC
或针对MySQL的五种兼容性,如注释中所指出
SELECT subject, date
FROM posts
WHERE id = $id
LIMIT 1,18446744073709551615;
ORDER BY date DESC
大量数据是完全从MySQL文档复制而来的。
假设日期唯一确定给定ID的一行,
SELECT subject, date
FROM posts
WHERE id = $id
AND date NOT IN
( SELECT MIN(date)
FROM posts
WHERE id = $id
)
ORDER BY date DESC
如果您使用的是SQL 2005或更高版本,则可以使用row_number函数...
With MyCTE AS (
SELECT subject,
date,
RowNumber = ROW_NUMBER() OVER(ORDER BY date DESC)
FROM posts
WHERE id = $id)
SELECT *
FROM MyCTE
WHERE RowNumber > 1
ORDER BY date DESC
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.