(MySQL)为什么查询后没有显示行?

时间:2016-07-18 15:19:08

标签: mysql sql

我有一个简单的问题,为什么在查询后没有显示行。这是我根据我的数据库中的3个表使用的示例查询。

    select ff9characters.name, ff9apchart.apneeded 
    from ff9characters 
    join ff9apchart 
    on ff9apchart.charID=ff9characters.id
    join ff9abilities
    on ff9apchart.abilityid=ff9abilities.id
    where ff9abilities.ability = 'Accuracy+'
    group by ff9characters.name
    order by ff9characters.id;

根本没有任何表现。我想补充一点,ff9abilities中的ability列填充了text数据类型的数据,并具有' Accuracy +'上市。

如果我将WHERE语句更改为:

where ff9abilities.ability like 'Acc%'

所有数据都显示出来。我返回了4行(这是我想要的结果)。

我是否应该将能力列的数据类型从text更改为varchar,以便它读取所有数据?

1 个答案:

答案 0 :(得分:0)

你可能有不正确的空格尝试修剪和(下)

  select ff9characters.name, ff9apchart.apneeded 
  from ff9characters 
  join ff9apchart 
  on ff9apchart.charID=ff9characters.id
  join ff9abilities
  on ff9apchart.abilityid=ff9abilities.id
  where trim(ff9abilities.ability) = 'Accuracy+'
  group by ff9characters.name
  order by ff9characters.id;