MySQL,如何选择SET列的所有可能值

时间:2013-12-19 20:40:31

标签: php mysql types set

有一个叫做拍卖的数据库,其中我有一个叫做区域类型SET的行,这个SET中的值是region1,region2,region3,region4,region5。 我需要贬低所有价值观。 我的代码是:

<?php 
require('assets/dbconn.php');

$result = mysqli_query($con,"SELECT * FROM auctions");
$row = mysqli_fetch_array($result);
?>
<?php 
echo $row['region'];
?>

但它只显示了一个值。有什么帮助吗?

1 个答案:

答案 0 :(得分:1)

据我所知,您想为列类型SET选择所有可能的值?然后你应该能够使用以下查询来获取它们......

SELECT 
    REPLACE(COLUMN_TYPE, 'set', '') `values`
FROM 
    information_schema.COLUMNS
WHERE 
    TABLE_SCHEMA = '' -- your database name here
AND 
    TABLE_NAME = '' -- your table name here
AND 
    COLUMN_NAME = '' -- your column name

您应该得到与此类似的结果:

('region1','region2','region3','region4','region5')

稍后,使用preg_replaceexplode,您就可以将其转换为数组(如果需要)