gpt4 book ai didi

php - 如何在sql查询中搜索时链接外键表的列名?

转载 作者:行者123 更新时间:2023-11-29 13:36:29 24 4
gpt4 key购买 nike

我打算在我的项目中创建一个搜索功能,但发现从另一个外键表中选择列记录时出现一些问题,这让我感到沮丧。

这是搜索前的正常示例输出: enter image description here

这是搜索后发布的表: enter image description here

mysql 查询我名为“member_booking”的表 enter image description here

如果我搜索基于事件表的标题,它将显示一串不受外键限制的标题记录。

mysql 查询可能如下所示:

select *
from member_booking,event,member
where member_booking.E_ID=event.E_ID and member_booking.MEM_ID=member.MEM_ID and member_booking.REF_CODES like '%$keyword%' OR event.E_TITLE like '%$keyword%' OR member.MEM_USERNAME like '%$keyword%' OR member.MEM_EMAIL like '%$keyword%'

谢谢。

最佳答案

如果将 $keyword 注入(inject)那些“like”运算符,请小心 SQL 注入(inject)攻击。使用“内连接”或左/右连接来连接表。

例如。

select 
-- your comma separated list of fields here, for example
-- e.event_title , e.amount , e.event_date , e.MEM_ID,
from
member_booking mb inner join event e on mb.E_ID = e.E_ID
inner join member m on mb.MEM_ID = m.MEM_ID
where mb.REF_CODES like '%$keyword%'
OR e.E_TITLE like '%$keyword%'
OR m.MEM_USERNAME like '%$keyword%'
OR m.MEM_EMAIL like '%$keyword%' **

关于php - 如何在sql查询中搜索时链接外键表的列名?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18662853/

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