當前位置:首頁 » 編程語言 » sql格式化日期字元串

sql格式化日期字元串

發布時間: 2024-12-02 08:57:44

sql里格式化字元串函數

select right(cast(power(10,3) as varchar)+33,3)
select right(cast(power(10,3) as varchar)+1,3)

❷ sql日期轉string

在MySQL資料庫中可以用date_format函數將日期類型轉成字元串類型。

❸ PLSQL中SQL語句怎樣轉換日期型函數為字元型

to_char函數可以將日期值格式化為字元串; to_date函數將字元串按指定格式轉換成日期值。
在查詢中, 將'2014/01/01'轉換成日期值,然後再用作查詢條件,這樣會比較好。
select ... where enddate < to_date('2014/01/01', 'yyyy/mm/dd')

❹ sql中格式化字元串或時間,遇到多少,寫多少,持

--求開始時間和結束時間相差的天數
DECLARE @result int
DECLARE @StartDayStartTime DATETIME
DECLARE @EndDayEndTime DATETIME
set @result=DATEDIFF (d,CONVERT(Datetime,@StartDay),CONVERT(Datetime,@EndDay))
--將2012-07-12 15:56:53 格式化為20120712 ,這種需求大多是因為每日數據量更新過大,所以為每天創建一張表,在實現跨多天查詢的時候,你懂得。
--執行sql,並返回,最後求和,@sql務必要聲明為nvarchar類型
declare @sql nvarchar(500)
declare @sm decimal(18,2) --開始里程
declare @em decimal(18,2)--結束里程
declare @sum decimal(18,2)--當天時間段內的里程
declare @temp decimal(18,2)--里程變數
set @sql='SELECT top 1 @temp=Convert(decimal(18,2),'+@GpsPath+'.Mileage) FROM '+@GpsPath+' WHERE GpsTime<='''+CONVERT(varchar(100),@E, 21)+''' AND TerminalNo=''02200051'' and '+@GpsPath+'.Mileage>0 ORDER BY GpsTime desc'
exec sp_executesql @sql,N'@temp decimal(18,2) output',@em out print @em
set @sql='SELECT top 1 @temp=Convert(decimal(18,2),'+@GpsPath+'.Mileage) FROM '+@GpsPath+' WHERE GpsTime>='''+CONVERT(varchar(100),@S, 21)+''' AND TerminalNo=''02200051'' and '+@GpsPath+'.Mileage>0 ORDER BY GpsTime asc'
exec sp_executesql @sql,N'@temp decimal(18,2) output',@sm out print @sm
set @sum=Convert(decimal(18,2),@em)-Convert(decimal(18,2),@sm)

❺ sql日期格式化怎麼處理

1. SELECTconvert(varchar, getdate(), 100)-- mon dd yyyy hh:mmAM (or PM)

-- Oct 2 2008 11:01AM

SELECTconvert(varchar, getdate(), 101)-- mm/dd/yyyy - 10/02/2008

SELECTconvert(varchar, getdate(), 102)-- yyyy.mm.dd -- 2008.10.02

SELECTconvert(varchar, getdate(), 103)-- dd/mm/yyyy

SELECTconvert(varchar, getdate(), 104)-- dd.mm.yyyy

SELECTconvert(varchar, getdate(), 105)-- dd-mm-yyyy

SELECTconvert(varchar, getdate(), 106)-- dd mon yyyy

SELECTconvert(varchar, getdate(), 107)-- mon dd, yyyy

SELECTconvert(varchar, getdate(), 108)-- hh:mm:ss

SELECTconvert(varchar, getdate(), 109)-- mon dd yyyy hh:mm:ss:mmmAM (or PM)

-- Oct 2 2008 11:02:44:013AM

SELECTconvert(varchar, getdate(), 110)-- mm-dd-yyyy

SELECTconvert(varchar, getdate(), 111)-- yyyy/mm/dd

SELECTconvert(varchar, getdate(), 112)-- yyyymmdd

SELECTconvert(varchar, getdate(), 113)-- dd mon yyyy hh:mm:ss:mmm

-- 02 Oct 2008 11:02:07:577

SELECTconvert(varchar, getdate(), 114)-- hh:mm:ss:mmm(24h)

SELECTconvert(varchar, getdate(), 120)-- yyyy-mm-dd hh:mm:ss(24h)

SELECTconvert(varchar, getdate(), 121)-- yyyy-mm-dd hh:mm:ss.mmm

SELECTconvert(varchar, getdate(), 126)-- yyyy-mm-ddThh:mm:ss.mmm

-- 2008-10-02T10:52:47.513

-- 利用字元串函數創建不同的日期格式

SELECTreplace(convert(varchar, getdate(), 111),'/',' ')-- yyyy mm dd

SELECTconvert(varchar(7), getdate(), 126)-- yyyy-mm

SELECTright(convert(varchar, getdate(), 106), 8)-- mon yyyy

go

--通用的日期轉換函數CREATE FUNCTION dbo.fnFormatDate (@Datetime DATETIME, @FormatMask VARCHAR(32))RETURNS VARCHAR(32)AS

BEGIN

DECLARE@StringDateVARCHAR(32)

SET@StringDate = @FormatMask

IF (CHARINDEX ('YYYY',@StringDate) > 0)

SET@StringDate =REPLACE(@StringDate,'YYYY',DATENAME(YY, @Datetime))

IF (CHARINDEX ('YY',@StringDate) > 0)

SET@StringDate =REPLACE(@StringDate,'YY',RIGHT(DATENAME(YY, @Datetime),2))

IF (CHARINDEX ('Month',@StringDate) > 0)

SET@StringDate =REPLACE(@StringDate,'Month',DATENAME(MM, @Datetime))

IF (CHARINDEX ('MON',@StringDateCOLLATESQL_Latin1_General_CP1_CS_AS)>0)

SET@StringDate =REPLACE(@StringDate,'MON',LEFT(UPPER(DATENAME(MM, @Datetime)),3))

IF (CHARINDEX ('Mon',@StringDate) > 0)

SET@StringDate =REPLACE(@StringDate,'Mon',LEFT(DATENAME(MM, @Datetime),3))

IF (CHARINDEX ('MM',@StringDate) > 0)

SET@StringDate =REPLACE(@StringDate,'MM',RIGHT('0'+CONVERT(VARCHAR,DATEPART(MM, @Datetime)),2))

IF (CHARINDEX ('M',@StringDate) > 0)

SET@StringDate =REPLACE(@StringDate,'M',CONVERT(VARCHAR,DATEPART(MM, @Datetime)))

IF (CHARINDEX ('DD',@StringDate) > 0)

SET@StringDate =REPLACE(@StringDate,'DD',right('0'+DATENAME(DD, @Datetime),2))

IF (CHARINDEX ('D',@StringDate) > 0)

SET@StringDate =REPLACE(@StringDate,'D',DATENAME(DD, @Datetime))

RETURN@StringDate

GO

2.通過dateadd函數來制定時間間隔

select dateadd(year,-1,convert(varchar, getdate(), 101))前一年,後一年反之

select dateadd(month,-1,convert(varchar, getdate(), 101))前一月,後一月反之

熱點內容
在線執行python 發布:2024-12-03 00:16:18 瀏覽:539
樂嘉性格色彩測試演算法 發布:2024-12-03 00:10:09 瀏覽:633
查看linux是否安裝mysql 發布:2024-12-03 00:06:55 瀏覽:583
linux設置開機啟動 發布:2024-12-03 00:01:44 瀏覽:982
暴力解壓縮 發布:2024-12-02 23:57:10 瀏覽:806
瀏覽器加密了 發布:2024-12-02 23:51:56 瀏覽:35
php獲取url的參數 發布:2024-12-02 23:39:13 瀏覽:865
android畢業設計選題 發布:2024-12-02 23:33:22 瀏覽:335
圓的面積c語言 發布:2024-12-02 23:33:14 瀏覽:942
安卓觸屏手機哪個牌子好 發布:2024-12-02 23:30:51 瀏覽:407