首先,我是初学者,所以请耐心等待。我试过在这里和其他地方搜索论坛,从我所看到的情况来看,我做得对..但出现错误。到“检查语法以在 'LIKE CONCAT(games.tag, ' Special%') AT LINE X 附近使用”。很明显我做错了..但我发现的一切都表明我做得对。有人请帮助我感到沮丧。

SELECT
games.tag,
ribbons.name,
members.username,
members.joined
FROM
member_ribbons
INNER JOIN ribbons
 ON member_ribbons.ribbon_id = ribbons.id
INNER JOIN games
 ON ribbons.game_id = games.id
INNER JOIN members
 ON member_ribbons.member_id = members.id
WHERE games.id = members.primary_game AND discharged='000-00-00' AND ribbons.name = LIKE CONCAT(games.tag, ' Special %');

一个例子
ribbons.name 将包含“BF4 特别注意事项”

我需要能够找到那个特定的.. 但唯一改变的是包含在 games.tag 中的第一个词。查询的其余部分有效。只需要弄清楚如何让它做到这一点,我很好。然而,到处搜索谷歌,这里没有显示任何如何做到这一点的例子..它甚至可能吗?显然我做错了。

最佳答案

你有额外的 =
改变这个

  AND ribbons.name = LIKE CONCAT
                   ^----//--no need this


  AND ribbons.name LIKE CONCAT

关于php - 在 where like 查询中使用 concat,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/23743855/

10-12 13:55