我在 html 页面上有一个多选组合框。国家的实际清单大约是 60 项。
<select name="country[]" multiple="multiple">
<option value="UK">United Kingdom</option>
<option value="FR">France</option>
<option value="DE">Germany</option>
<option value="JP">Japan</option>
</select>
在数据库中,国家列表以逗号分隔的字符串形式存储在行中,例如项目一可能是 uk、de 或 fr、de、jp 等。
我希望能够在组合框中选择多个项目并拉出项目,以便显示与该国家/地区一起选择的任何国家/地区的项目。一个问题是 country 列存储了一个逗号分隔的字符串值。
SELECT * FROM projects WHERE FIND_IN_SET("country","DE, UK")'
我的问题是 FIND_IN_SET 只会匹配整个字符串。上面的代码可能会找到一个国家/地区只有 DE 或 UK 的项目,但不会找到例如“FR,UK”的项目。
如何解析列 country 并创建 SQL 查询以显示我在组合框中选择的国家/地区?