在我的 mysql 数据库中有 2 个表。 1.A 2.B
在表A中列是id(varchar)primary key,location(varchar),date(date) 在表 B 列中是 id(varchar)外键、activity(varchar)、cost(int)
我使用搜索框,如果两个表的 id 字段都匹配,则显示结果。 当我使用数字时它工作正常,但是当我使用字母数字值时它就不起作用。
所以请帮助我 提前致谢。
最佳答案
首先:使用 varchar 作为 id 可能不是一个好主意。如果您希望将某种信息存储在您现在存储在 id 字段中的位置/事件中,您可能需要考虑添加另一个字段,使 id 成为一个整数,然后只比较整数。
也就是说,它应该只适用于以下内容:
SELECT *
FROM A, B
WHERE A.id = B.id AND A.fieldthatwassearched = '".$value_from_php."' ;
和:
SELECT *
FROM A, B
WHERE A.id = B.id AND A.id = '".$value_from_php."'
不是值周围的 '"和 "',这些很重要,因为你需要向 mysql 发送一个字符串,所以它需要被引用 ;)
关于php - Mysql varchar比较,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9974095/