需要:

我需要使用mysql在字段中选择提取值。该值用逗号分隔。

MYSQL表:

id   |   city      |  cusine_type
------------------------------------
1    | Coimbatore  |  3 Star Hotel
2    | Coimbatore  |  5 Star Hotel, Bakery
3    | Coimbatore  |  3 Star Hotel, Ice Cream Store
4    | Coimbatore  |  Star Hotel, Restaurant


我的PHP和MySQL代码

include "db.php";
$city='Coimbatore';
$cus_type='Star Hotel';
$qy=mysqli_query($con, "SELECT * FROM add_res where city='$city' and cusine_type REGEXP CONCAT(',?[$cus_type],?') ");


问题:

上面的代码选择表中的所有行。我只需要第4行。

最佳答案

你可以做

cusine_type LIKE '%$cus_type%'


根据您编辑的问题进行编辑。一个不错的选择是

FIND_IN_SET('$cus_type',cusine_type)


Fiddle

How can I prevent SQL injection in PHP?

10-06 07:57