php - 需要检索与某些单词匹配的列 MYSQL PHP
问题描述
假设我有一组单词...... $rules = 'Tables Array Code Images Html List'
它们都是空格分隔的。我想检查数据库中是否存在任何这些单词匹配的列。我已经看到了不同的意见和帖子,但它们看起来都很复杂而且代码很多。我偶然发现的最小且易于理解的解释是
$sql = "SELECT * FROM table WHERE rules = ANY( string_to_array('".$rules."', ' '))";
但这没有用......我也在这里看到了这个
$sql = SELECT * FROM table ON string_to_array(rules, ' ') @> string_to_array('".$rules."', ' ')
and cardinality(string_to_array(rules, ' ')) = cardinality(string_to_array('".$rules."', ' '))
也没用。。
任何想法PLS ...我已经在这工作了2个多小时了。一个答案会给我很大的帮助。
编辑...
$array = array($rules);
$csv = implode(",", $array);
$sqld = "SELECT * FROM table WHERE find_in_set(rules, $csv)";
解决方案
推荐阅读
- colors - 如何使用调色板全息视图中的十六进制设置线条颜色
- java - Apache Beam:Kafka 消费者一遍又一遍地重启
- c# - 是否可以将 DataTable 放在页面的父级和来自页面的 Modal 中;每个都有自己的初始化?
- powershell - vmware_vm_shell 和 powershell 不起作用
- javascript - javascript mongoose 在两个模式挂钩之间传递消息
- google-apps-script - addEditor 和 removeEditor 在谷歌工作表的某些条件下
- javascript - React createContext 和 useContext 的打字稿
- python - 我想选择具有特定类的 div 标签。但是当我运行它时,我的蜘蛛什么也没返回?
- swiftui - SwiftUI 中的活动指示器
- c# - Docker 容器无法启动