gpt4 book ai didi

php - 从 MySQL 获取高级数据

转载 作者:行者123 更新时间:2023-11-29 06:33:56 26 4
gpt4 key购买 nike

我有一个名为“objects, events & events_types”的表,这些表有一个结构(不是它的所有结构,而是我需要从数据库中显示的基本信息)和一些这样的信息:

对象:
结构:id(INT), title(TEXT)...
数据:

  • 1,1 号楼
  • 2,2 号楼
  • 3,3 号楼

事件:
结构:id(INT)、object_id(INT)、event_type(INT)
数据:

  • 1, 1, 3
  • 2, 1, 1
  • 3、2、4
  • 4、2、5
  • 5, 2, 1
  • 6, 1, 1
  • 7, 2, 2
  • 8, 1, 3

事件类型:
结构: id(INT), name(VARCHAR)
数据:

  • 1、闹钟
  • 2,解除武装
  • 3、火
  • 4、报警按钮
  • 5,未知

我有一个页面,它从 events 表加载所有数据,但我需要该页面只显示那些来自 objects 表的对象,这些对象有一个数据到 事件表。它不会从 objects 表中加载 id(3) 对象,因为 events 表中没有包含 object_id 3 的行。

我需要一个包含以下列的 html 表格:

  • objects.id
  • objects.title
  • events_types.name
  • events 表中计数,其中该表的object_idobjects 表和id events 表中的 event_type$_GET['event_type'] 从 URL 中获取,该 URL 将被定义为变量

包含来自数据库的信息的表格示例,其中 $_GET['event_type'] = 1events_types 表格中的这个“1”是 报警:

| 1 | House #1 | Alarm: 2 |
| 2 | House #2 | Alarm: 1 |

但是 House #3 不会显示,因为 events 表中没有它的数据。

关于信息,在实际表中,我每个月在 objects 表中有大约 200 条记录,在 events 表中有大约 500 条记录。这对我来说就像一个统计系统。

最佳答案

根据您的描述,这听起来像是一个非常简单的连接:

SELECT
objects.id,
objects.title,
events_types.name
FROM
objects INNER JOIN events on events.object_id = objects.id
INNER JOIN events_types on events_types.id = events.event_type;

这应该为每个事件提供一条记录,该记录将标有该事件类型的名称。任何没有关联事件的对象都不会显示。

关于php - 从 MySQL 获取高级数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26170048/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com