php - 如何在php中不将数据库表中的重复值显示到客户端表单

标签 php mysql

我有一个数据库表video_tbl,如下

id       vdate             vname 
1        2016-01-05        dssfsd    
2        2016-02-11        vxc  
3        2016-02-16        vgjhgh      
4        2015-06-12        xcbcvxb       
5        2014-12-03        gjm vcb  

我想仅在下拉列表中显示vdate年份,例如

2016
2015
2014

但是我的输出是这样的

2016
2016
2016
2016
2015
2014

在下拉列表中。

<?php
$sql_videodate = mysql_query("SELECT * FROM cf_crane_video ORDER BY cf_vdate",$con);
while($row1 = mysql_fetch_object($sql_videodate))
$vdate = $row1->cf_vdate;
$orderdate = explode('-', $vdate);$month = $orderdate[1];$day   = $orderdate[2];$year  = $orderdate[0];
?>

最佳答案

试试这个;)

SQL Fiddle

MySQL 5.6 架构设置:

CREATE TABLE video_tbl 
    (`id` int, `vdate` datetime, `vname` varchar(7))
;

INSERT INTO video_tbl 
    (`id`, `vdate`, `vname`)
VALUES
    (1, '2016-01-05 00:00:00', 'dssfsd'),
    (2, '2016-02-11 00:00:00', 'vxc'),
    (3, '2016-02-16 00:00:00', 'vgjhgh'),
    (4, '2015-06-12 00:00:00', 'xcbcvxb'),
    (5, '2014-12-03 00:00:00', 'gjm vcb')
;

查询 1:

SELECT DISTINCT YEAR(`vdate`) year FROM video_tbl ORDER BY `vdate` DESC

Results :

| year |
|------|
| 2016 |
| 2015 |
| 2014 |

关于php - 如何在php中不将数据库表中的重复值显示到客户端表单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37382390/

相关文章:

mysql - 像 mysqljs/mysql 这样的 Node mysql 驱动程序如何与 mysql 服务器通信?

php - 无法选择 ip=inet_pton($ip)

php - 循环遍历结果是否为 NULL 值返回空字符串?

php - cURL 使用来自 mySQL 的信息,然后存储 cURL 的信息

php - 我的 HTML 电子邮件未被格式化为 HTML?

php - PHP MVC 应用程序中用于限制登录(或其他)请求的公认通用模式

php - 获取自定义 WordPress 数据库的表状态

php - 从 mysql 数据库创建动态变量

mysql - 查询对我来说不可能?

php - 如何在MYSQL数据库中创建事件?