PHP MySQL 字母顺序链接

标签 php mysql

我有一个装满记录的巨大表格,我使用 PHP 为每个记录制作了一个单独的页面。在页面上,我想按字母顺序将它们链接起来,例如页面“Dunn”在侧边栏中会有这样的链接:

  • 达伦
  • 戴夫
  • 厄运
  • 邓恩
  • 杜普
  • 杜斯
  • 杜特

始终有 3 个链接在字母表的两侧上下移动。所有数据都将立即插入到表中,我能想到的唯一方法是在插入时设置一个数字,使其在字母表中相对于其他数据的位置。

这看起来很复杂,我想知道是否有更简单或更好的解决方案?我之前在很多网站上看到过这样做,所以希望我能找到一个 :) 任何帮助将不胜感激。

最佳答案

扩展 Gumbo 的回答:如果您愿意,可以使用 UNION 在一个查询中完成。

(
SELECT  `name` 
FROM  `table` 
WHERE  `name` <  "Dunn"
ORDER BY  `name` DESC 
LIMIT 3
)
UNION ALL (

SELECT  `name` 
FROM  `table`
WHERE  `name` =  "Dunn"
LIMIT 1
)
UNION ALL (

SELECT  `name` 
FROM  `table` 
WHERE  `name` >  "Dunn"
ORDER BY  `name` ASC
LIMIT 3
)

因此给出一个包含所有 7 个必需条目的表格。

关于PHP MySQL 字母顺序链接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1153275/

相关文章:

php - PHP 和 Oracle 在企业环境中的配合程度如何?

php - MySQL-从两列中两个不同的行满足相同条件的地方获取相似度分数

c# - 自定义 MySQL session 存储提供程序 - 反序列化问题

mysql - 违反完整性约束 : 1048 Column 'post_id' cannot be null

php - Laravel Eloquent 集合 sortBy 不生效

php - Elasticsearch排序,用另一个替换缺失的字段

php - php 脚本安全中的 mysqldump

php - Composer 找不到本地 vcs 依赖项

mysql - Nodejs异步: return mysql query result in for loop

php - 如何使用 php 中的复选框其他选项将记录插入数据库?