php - 如何在没有重复的情况下将文本存储在数据库中并且单词顺序无关紧要?

标签 php mysql sql database

所以我想将我网站上的搜索存储在数据库中,并且我希望它们是唯一的,即使单词的顺序对我来说并不重要,例如:

some words

words some

对我来说都是一样的,我只想更新上次搜索的时间。

那么有没有办法在 SQL 中执行此操作(如 UNIQUE),或者我应该在服务器端语言中找到解决方案?

提前致谢。

最佳答案

我不知道是否有更好的方法来做到这一点,但我能想到的唯一方法是在 PHP 中用空格分隔字符串,然后按字母顺序排列:

$words = explode(" ", $keywords);
sort($words);
$sorted_keywords = implode(" ", $words);

然后,当您从数据库中存储/搜索时,无论单词 WERE 的顺序如何,您将始终使用相同的字符串。

关于php - 如何在没有重复的情况下将文本存储在数据库中并且单词顺序无关紧要?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12581694/

相关文章:

sql - 选择行数,按 PostgreSQL 中时间间隔的动态范围排序

mysql - 从条件表中获取 WHERE 子句的条件

mysql - 如何启动具有特定增量值的mysql列?

javascript - 使用 PHP 和 angular.js 获取和设置 session

php - 在我的 CSS 和 JavaScript 文件中嵌入 PHP 代码的正确方法是什么?

php - 模型中的 “reporting”错误

mysql - mysql中如何划分和舍入?

android - 在ListView中添加搜索: crashed when typing word

php - PHP 类的版本控制

php - 使用 PHP SQL 在数据库中查找特定值