簡體   English   中英

如何從Varchar類型的SQL中獲取月份和年份

[英]How to i get Month & Year from SQL in Varchar Type

我已經創建了表格(商業)列( MyDate )“ Varchar(255)”

我有一些手動輸入,例如:

dd-mm-yyyy
01-05-2019
02-05-2019
15-06-2019
16-06-2019

現在我想選擇“僅一個月和一年”。 喜歡

05-2019 or 06-2019

請告訴我如何從此列中僅選擇月份和年份。

您不需要在數據類型之間進行任何轉換,因為您要從字符串中提取字符串,並使用mm-yyyy格式模式提取部分,只需使用substring()函數,如下所示:

select distinct substring(replace(MyDate,' ',''), 4, 7) as "Month-Year"
  from myTable;

Month-Year
----------
05-2019
06-2019

順便說一句,考慮對字符串中有空格的可能性考慮使用replace(MyDate,' ','')2017+版本的 trim(MyDate) )。

使用字符串操作:

select right(col, 4) as yyyy,
       right(col, 7) as mmyyyy,
       substring(col, 4, 2) as mm

僅對數據的MM-YYYY部分使用DISTINCT會根據您的要求僅返回一次MM-YYYY組合。 示例腳本如下所示-

SELECT DISTINCT RIGHT(MyDate, 7)
FROM commercials

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM