如何使用 PHP 过滤 MySQL 中的数据(一对多关系)

2024-02-29

我想做的事

用户将使用发送一个值GET我会将值存储在名为的变量中$category1。现在包含值的所有行$category1将显示。这就像一个搜索系统。

这是我的代码

$stmt = $conn->prepare("SELECT tmdb_movies.movie_title
,GROUP_CONCAT(DISTINCT genres.genres_name SEPARATOR ', ') AS genres

FROM tmdb_movies

JOIN genres ON genres.genres_tmdb_id=tmdb_movies.tmdb_id

WHERE EXISTS (SELECT genres.genres_name FROM genres WHERE genres.genres_name = '$category1');

GROUP BY tmdb_movies.movie_title");

错误:因为 WHERE Exist 行(IDK,我是否应该使用它)

致命错误:未捕获的 PDOException:SQLSTATE[42000]:语法错误或访问冲突:1140 在没有 GROUP BY 的聚合查询中,SELECT 列表的表达式 #1 包含非聚合列 'DataBaseName.tmdb_movies.movi​​e_title';这与 sql_mode=only_full_group_by 不兼容

现在让我解释一下我的表结构

我有两张桌子

  1. tmdb_movies(它存储电影标题和 tmdb_id)
  2. genres(它存储流派,通过tmdb_id连接)

表格的例子。

tmdb_movies table

tmdb_id     movie_title
1           The_Dark_Night
2           Logan
3           IronMan

genres table

tmdb_id       genres
 1            Action
 1            Crime
 1            Drama
 2            Action
 2            Drama
 3            Action
 3            Comedy

在 5.7 中,sqlmode 默认设置为:

ONLY_FULL_GROUP_BY,
 NO_AUTO_CREATE_USER,
 STRICT_TRANS_TABLES,
 NO_ENGINE_SUBSTITUTION

删除该条款ONLY_FULL_GROUP_BY你可以这样做:

SET sql_mode=(SELECT REPLACE(@@sql_mode,'ONLY_FULL_GROUP_BY',''));

这假设您需要使用非聚合列进行 GROUP BY。

otherwise i tested your code locally it working perfectly fine. enter image description here

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何使用 PHP 过滤 MySQL 中的数据(一对多关系) 的相关文章

  • openssl_crypt 中初始化向量的使用

    我看了一下this https stackoverflow com questions 1391132 two way encryption in php问题 并想为自己做 当我运行这段代码时 直接取自这个答案 https stackove
  • 我应该将标签存储在文本字段还是单独的表中?

    我有一个表 其中的行如下所示 id path tags 1 pictures pic1 jpg car bmw 3 pictures pic2 jpg cat animal pussy 4 pictures pic3 png gun 基本上
  • PHP - SQLite 与 SQLite3

    我已经使用 SQLite 2 8 17 制作了一个 Web 应用程序 我现在才发现有一个 SQLite3 在制作 Web 应用程序时 它以某种方式逃避了我的注意 可能是由于缺少 php 函数的文档 我想知道 使用 SQLite3 比 SQL
  • 表单请求中的 Laravel 数组验证

    我无法验证 Form Request 类中包含数组元素的字段 规则方法 public function rules return state gt required state 0 gt required state gt required
  • 作为数据流写入 div

    考虑写入 div 的 AJAX 调用 recent req post result php d data function returnData content html returnData PHP 脚本位于result php执行一些需
  • 使用计数器作为变量名称的一部分来访问变量

    我尝试做类似的事情 cat1 array hello everyone cat array bye everyone for index 0 index lt 2 index echo cat index 1 当然是行不通的 我需要在这里改
  • varchar(20) 和 varchar(50) 相同吗?

    我看到评论 如果 varchar 20 列中有 5000 万个 10 到 15 个字符之间的值 而 varchar 50 列中有同样的 5000 万个值 它们将占用完全相同的空间 这就是重点varchar 而不是 char 有人可以告诉我原
  • 在 Laravel 5.4 中选择下拉列表的选定值

    我有一个名为 名称 的下拉列表 用户将在其中选择其中一个 提交后 如果出现一些错误 那么我想选择所选的名称 我在 laravel 5 4 中使用它 控制器 info DB table designation gt where status
  • PHP 特性 - 定义通用常量

    定义可由命名空间内的多个类使用的常量的最佳方法是什么 我试图避免过多的继承 因此扩展基类不是理想的解决方案 并且我正在努力寻找使用特征的良好解决方案 这在 PHP 5 4 中是否可行 或者应该采取不同的方法 我有以下情况 trait Bas
  • PHP:如何获取
    中的名称值

    有没有办法获取form标签中name属性的值 我正在使用 PHP 但在 中没有看到它 POST 有没有办法获取form标签中name属性的值 我正在使用 PHP 但在 POST 中没有看到它 不 表单的名称属性永远不会设置为作为 POST
  • 使用 TCPDF PHP 库横向显示的图像

    我正在使用 TCPDF PHP 库生成包含照片的 PDF 文档 由于某种原因 某些照片在我的计算机和网络上正确显示 但当我将该图像放入 PDF 中时 它似乎是横向的 这只发生在某些图像上 大多数图像显示正确 下面是在 PDF 中横向显示的示
  • 如何在 mysql 中两次连接同一个表?

    我有2张桌子 其中一个 域 具有域 ID 和域名 dom id dom url 另一列包含实际数据 其中 2 列需要 TO 和 FROM 域名 所以我有 2 列 rev dom from 和 rev dom for 它们都存储域表中的域名
  • 撇号 php 问题

    我正在做一项涉及喊话箱的学校作业 一个很棒的教程 它使用 jquery ajax mysql 和 php 现在我遇到了以下句子的一个小问题 result li strong row user strong img src alt row m
  • 使用composer create-project安装特定的laravel 5版本

    今天我尝试安装特定的 laravel 版本composer create project laravel laravel 5 1 8 your project name prefer dist 因为有些插件在5 1 9及以上版本有问题 但是
  • 根据相同的 XML 模式 (XSD) 加速一批 XML 文件的 XML 模式验证

    我想加快根据同一个 XML 模式 XSD 验证一批 XML 文件的过程 唯一的限制是我处于 PHP 环境中 我当前的问题是 我想要验证的模式包括 2755 行的相当复杂的 xhtml 模式 http www w3 org 2002 08 x
  • PHP:检测USB设备

    我正在尝试使用 PHP 将用户名和密码存储到 USB 拇指驱动器上的文本文件中 因此 当用户返回使用 USB 密钥登录时 应该会打开一个弹出窗口 并提示输入用户名和密码 所以我的问题是如何使用 PHP 检测 USB 拇指驱动器 所以客户端或
  • 在 Woocommerce 商店页面中显示可变产品的默认变化价格

    I m wondering how I can display the product price on the shop page Right now my variable products are shown with their p
  • 在 php 中回显 JSON 数据

    我正在尝试回显一些 JSON 数据 问题是数据包含变量 但我的代码没有将变量放入字符串中 这是我的代码 status row Status priority row Priority echo status status priority
  • PHP Soap Server:使用字符串(xml 字符串)而不是 WSDL 文件(指向它的 url)实例化

    Soap Server的PHP页面 我见过 http www php net manual en soapserver soapserver php http www php net manual en soapserver soapser
  • DOMDocument PHP 内存泄漏

    在 MAC 上的 MAMP 下运行 PHP 5 3 6 内存使用量每调用 x 次 3 到 8 次 就会增加 直到脚本因内存耗尽而终止 我该如何解决 libxml use internal errors true while true dom

随机推荐

  • NHibernate 一对一关系

    我有以下内容Domain Model s public class WriteOffApprovalUser public virtual string UserName get set public virtual Employee Em
  • 使用 git add --patch 手动编辑

    因此 我在分支 A 中得到了一个一直在处理的文件 并且我正准备提交它 但是 查看差异 我认为最好将其放入两个单独的提交中 好吧 在这种情况下 也许是两个单独的分支 我之前使用过 git add patch 来暂存单独的帅哥 所以我想我可以使
  • 如何验证 3 个字段中的日期输入?

    我有 3 个用于日期输入的字段
  • 截断 ASP.Net MVC 中的模型属性

    我目前以不同的方式使用截断和文本编辑器 两者都工作正常 但我面临这个问题 我想截断文本编辑器中的文本 T T 我使用这种方式截断及其工作原理 helper Truncate string input int length if input
  • 如何使用 JPA Criteria Query 重写此查询?

    public class Entity private boolean suspended private String code Type type org jadira usertype dateandtime joda Persist
  • Plotly.js:无法显示完整的分类 x 轴

    我必须绘制一个关于时间的 x 轴折线图 x 轴类似于 00 00 00 05 00 10 23 55 使其不是数字而是分类 但是 我可能没有 y 轴上的完整数据列表 例如 仅从 00 00 到 09 00 有数据 数据必须从 00 00 开
  • Clearfix 与 Twitter 引导程序

    我对 twitter bootstrap 有一个问题 对我来说看起来有点奇怪 我有一个固定在左侧的侧边栏和一个主要区域 div div ul li A li li A li li C li li D li li E li li F li l
  • 如何在 Visual Studio 2010 中添加 SIMD 相关编译器标志

    我找到了这个标志列表 http www ncsa illinois edu UserInfo Resources Software Intel Compilers 10 0 main for mergedProjects optaps fo
  • 如何在keras中可视化卷积神经网络中间层的输出?

    最近我创建了用于猫和狗分类的基本 CNN 模型 非常基本 如何使用 keras 可视化这些层的输出 我使用 keras 的 Tensorflow 后端 您可以定义一个模型 获取您想要查看的每一层的输出并进行预测 假设您有完整的模型 cnnM
  • 没有工作树就无法使用 git-pull

    我正在尝试从我刚刚设置的远程存储库中提取数据 并且收到了消息 没有工作树就无法使用 git pull 我读过的所有内容似乎都指向我的 git 目录 但看起来不错 git branch 给出输出 master and git ls tree
  • 处理回发数据中的数组 - MVC3

    我目前是一名 WebForms 开发人员 正在尝试转向 MVC 我对 MVC 感到非常兴奋 而且我真的很开心 但我遇到了一个奇怪的问题 所以我想做的是为 小部件 创建一个高级编辑器 我已经发布了下面的代码 当您添加前 4 5 个项目时 一切
  • python asyncio 和 httpx

    我对异步编程非常陌生 我正在尝试使用 httpx 我有以下代码 我确信我做错了什么 只是不知道它是什么 有两种方法 一种是同步 另一种是异步 它们都来自谷歌金融 在我的系统上 我看到花费的时间如下 异步 5 015218734741211同
  • 整洁地替换为一个奇怪的字符

    我正在使用 Tidy 带有 PHP5 并启用 UTF8 输入 输出和字符编码 当我用清洁器清洁绳子时 nbsp 在其中 它用一个奇怪的字符替换它 我尝试过弄乱整洁的配置 但我尝试的任何操作似乎都不起作用 整理前 This is a test
  • GDB - 神秘的汇编代码是什么?

    Dump of assembler code for function main 0x0804833e lt 0 gt push ebp 0x0804833f lt 1 gt mov esp ebp 0x08048341 lt 3 gt s
  • 指标过滤器未分配给指标警报

    我正在使用 terraform 设置 aws cloudwatch 日志 以便在日志中出现错误时发送电子邮件 terraform 文件如下所示 resource aws cloudwatch log metric filter error
  • 对象配置必须是包含 yii2 和 mongodb 中“class”元素的数组

    登录或注册时出现错误 gt yii2 mongodb给出一个错误 MongoDB 与 yii2 的连接已完成 请帮我解决这个问题 main local php return components gt mongodb gt class gt
  • 如何在 Vuetify 行上将“光标”设置为“指针”?

    如何设置cursor pointer在 Vuetify 上
  • Xcode 4.x 中代码自动完成/语法突出显示的问题

    我在我的一个项目中的 Xcode 中遇到了一个相当奇怪的问题 当我开始编写代码时 我习惯了自动完成功能为我建议大量条目 由于某种原因 从昨天开始 它就停止工作了 我现在收到奇怪的自动完成条目 例如 and the Andy MyCompan
  • 找出按下的键的字符

    如果我向 KeyboardEvent KEY DOWN 添加一个侦听器 我可以找到 keyCode 和 charCode keyCode 根据键盘映射到不同的字符 根据帮助 charCode 同样没用 字符代码值是英文键盘值 例如 如果按
  • 如何使用 PHP 过滤 MySQL 中的数据(一对多关系)

    我想做的事 用户将使用发送一个值GET我会将值存储在名为的变量中 category1 现在包含值的所有行 category1将显示 这就像一个搜索系统 这是我的代码 stmt conn gt prepare SELECT tmdb movi