【发布时间】:2013-07-01 02:58:24
【问题描述】:
我在 MySQL 数据库中有以下数据类型的列 'Ambience':
set('Funny', 'Sad', 'Scary')
我正在通过 PHP 查询数据:
$result = mysqli_query($con,"SELECT * FROM Films");
我想知道如何在客户端处理这种数据类型。例如,我想找一部吓人的电影并打印出来。我应该将整个 SET 数据类型视为字符串吗?
【问题讨论】:
我在 MySQL 数据库中有以下数据类型的列 'Ambience':
set('Funny', 'Sad', 'Scary')
我正在通过 PHP 查询数据:
$result = mysqli_query($con,"SELECT * FROM Films");
我想知道如何在客户端处理这种数据类型。例如,我想找一部吓人的电影并打印出来。我应该将整个 SET 数据类型视为字符串吗?
【问题讨论】:
如果你想要一部恐怖的电影:
SELECT * FROM Films WHERE FIND_IN_SET('Scary', Ambience) > 0;
【讨论】:
这是一个糟糕的设计,因为您需要搜索 Ambience 字段的特定值。你可以使用FIND_IN_SET,但是你的查询会很慢。转到Ambience 的原子值
【讨论】: