我发现很多PHP示例使用map
和implode
来构造他们的字符串......我使用Node和Javascript,我认为这可能是问题所在。我有一系列ID,我就这样保存它:
[1, 2, 3, 4].join();
存储的内容正在尝试运行查询:
SELECT sr.id, sr.name, sr.city FROM table1 AS sr
JOIN table2 AS st WHERE sr.city = st.city AND sr.id IN (st.ids);
因此两个表都有一个列city,table2有多个记录,table1只有一个。 ' ids' column在table2中的类型为TEXT。问题是它只返回id为1的行。如果我这样做:
SELECT sr.id, sr.name, sr.city FROM table1 AS sr
JOIN table2 AS st WHERE sr.city = st.city AND sr.id IN (1,2);
我会得到第1行和第2行。导致问题的原因是什么?我试过了[1, 2, 3, 4].join(', ');
但这并没有帮助。有什么建议吗?