我有一个数据库表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];
?>
最佳答案
试试这个;)
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/