Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/67.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/78.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 如何在SQL查询中选择时间戳的一部分_Mysql_Sql_Timestamp_Distinct_Extract - Fatal编程技术网

Mysql 如何在SQL查询中选择时间戳的一部分

Mysql 如何在SQL查询中选择时间戳的一部分,mysql,sql,timestamp,distinct,extract,Mysql,Sql,Timestamp,Distinct,Extract,在我使用的数据库中,我只想从特定的时间戳字段中选择年份。特别是,我希望从这个数据库专栏中选择独特的年份 例如,如果字段“ModifyTimeStamp”中的所有时间戳都来自2002年或2006年,我只希望返回“2002”和“2006”的结果。如果这是不可能的,我会满足于得到一堆'2002'和'2006'混合的结果,然后再分析它 到目前为止,我所能做的就是“从表中选择ModifyTimeStamp”——我所有的解析尝试都失败了。我开始阅读有关SQL的extract命令,但我相信它只适用于Postg

在我使用的数据库中,我只想从特定的时间戳字段中选择年份。特别是,我希望从这个数据库专栏中选择独特的年份

例如,如果字段
“ModifyTimeStamp”
中的所有时间戳都来自2002年或2006年,我只希望返回“2002”和“2006”的结果。如果这是不可能的,我会满足于得到一堆'2002'和'2006'混合的结果,然后再分析它

到目前为止,我所能做的就是“从表中选择ModifyTimeStamp”——我所有的解析尝试都失败了。我开始阅读有关SQL的
extract
命令,但我相信它只适用于PostgreSQL

非常感谢您的建议

编辑:得到了答案,非常感谢上帝和马克。我想要的代码是:

“从表中选择不同的年份(修改时间戳)”

试试这个

select distinct datepart(yy,TheDate) from YourTable
从表中选择distinct datepart(yy,TheDate)您没有指定正在使用的RDBMS(数据库服务器),但大多数数据库都内置了日期处理功能:

  • MySQL/SQL Server:

    select YEAR(modifytimestamp) from yourtable
    
    select DatePart(year, modifytimestamp) from yourtable
    
  • Access/SQL Server:

    select YEAR(modifytimestamp) from yourtable
    
    select DatePart(year, modifytimestamp) from yourtable
    
  • 甲骨文:

    select TO_CHAR(modifytimestamp, 'YYYY') from yourtable
    

哪个数据库?(另外,随机信息:
timestamp
在SQL server中与日期或时间无关;-)抱歉,忘记指定了。MySQL数据库这适用于MS SQL Server,但其他RDBMS将具有类似的函数调用。参考:感谢datagod。我的实际命令有点不同,但是你用“distinct”关键字让我走上了正确的轨道。真不敢相信我在搜索中错过了。。。