我想在MySQL中使用存儲過程將小時轉換爲分鐘。例如,我得到的輸出爲3小時15分鐘。我需要將它轉換爲195分鐘。我嘗試使用多個案例,但沒有爲我工作......你能幫我,如果你有任何代碼來解決這個?在mySQL中的存儲過程
-2
A
回答
0
您可以使用函數來達到此目的。
調用該函數:
SELECT toMinutes(1,1);
0
我的工作要求,並能成功地創建一個函數如下!
/****** Object: UserDefinedFunction [dbo].[BUSINESS_DURATION_MINTS_FN] Script Date: 10/17/2017 12:22:12 PM ******/
SET ANSI_NULLS OFF
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER FUNCTION [dbo].[BUSINESS_DURATION_MINTS_FN]
(@string varchar(100))
RETURNS INT
AS
BEGIN
DECLARE @total_mints INT
DECLARE @hours INT
DECLARE @Mints INT
IF @string IS NOT NULL
BEGIN
SET @string = REPLACE(UPPER(@string),'HOURS','HOUR')
SET @string = REPLACE(UPPER(@string),'MINUTES','MINUTE')
IF ((CHARINDEX(UPPER('HOUR'),UPPER(@string))!=0) AND (CHARINDEX(UPPER('MINUTE'),UPPER(@string))!= 0))
BEGIN
SET @hours = CONVERT(INT,SUBSTRING(@string,1, (CHARINDEX(UPPER('HOUR'), UPPER(@string))-2)))
SET @Mints = CONVERT(INT,SUBSTRING(@string,(CHARINDEX(UPPER('HOUR'),UPPER(@string))+4),(CHARINDEX(UPPER('MINUTE'),UPPER(@string))-(CHARINDEX(UPPER('HOUR'), UPPER(@string))+5))))
END
IF ((CHARINDEX(UPPER('HOUR'),UPPER(@string))=0) AND (CHARINDEX(UPPER('MINUTE'),UPPER(@string))!= 0))
BEGIN
SET @hours = 0
SET @Mints = CONVERT(INT,SUBSTRING(@string,1, (CHARINDEX(UPPER('MINUTE'), UPPER(@string))-2)))
END
IF ((CHARINDEX(UPPER('HOUR'),UPPER(@string))!=0) AND (CHARINDEX(UPPER('MINUTE'),UPPER(@string))=0))
BEGIN
SET @hours = CONVERT(INT,SUBSTRING(@string,1, (CHARINDEX(UPPER('HOUR'), UPPER(@string))-2)))
SET @Mints = 0
END
IF ((CHARINDEX(UPPER('HOUR'),UPPER(@string))= 0) AND (CHARINDEX(UPPER('MINUTE'),UPPER(@string))=0))
BEGIN
SET @hours = 0
SET @Mints = 0
END
SET @total_mints = @hours*60 + @Mints
END
IF @string IS NULL
BEGIN
SET @total_mints = NULL
END
RETURN @total_mints
END
GO
+0
我無法在存儲過程中調用此函數。任何人都可以幫助我? –
+0
從SP調用函數時會出現什麼錯誤? –
相關問題
- 1. 在MySQL中調用存儲過程中的存儲過程
- 2. 從存儲過程中調用存儲過程在MySQL中
- 3. 環在MySQL存儲過程
- 4. 存儲過程在MYSQL
- 5. 在MySQL存儲過程
- 6. MYSQL - 存儲過程
- 7. MySQL存儲過程
- 8. MySQL存儲過程
- 9. 存儲過程mysql
- 10. MySQL存儲過程
- 11. MySQL - 存儲過程
- 12. Mysql存儲過程
- 13. MySQl存儲過程
- 14. 存儲過程MySQL
- 15. 在MySQL存儲過程中的總值
- 16. 存儲過程在Ubuntu中的mysql
- 17. 在mysql中的存儲過程參數
- 18. 在MySql中存儲過程的性能
- 19. 如何在MySQL中的存儲過程中調用存儲過程
- 20. MySQL的存儲過程
- 21. MySQL的存儲過程
- 22. 存儲過程的MySQL 5.5.16
- 23. MySQL的存儲過程
- 24. MySQL的存儲過程
- 25. MySQL的存儲過程
- 26. MySQL的 - 存儲過程
- 27. 在MySQL中級聯存儲過程
- 28. 在SQuirreL中調用MySQL存儲過程
- 29. 在MySQL中使用存儲過程
- 30. 在php中調用mysql存儲過程
爲什麼你需要一個存儲過程。只需將小時數乘以60並添加分鐘數,即可獲得答案。 –
感謝您的回覆Hatim Stovewala!但是,實際情況是,我將在數據庫字段中獲得xx小時xx分鐘的輸出。我需要將其轉換爲分鐘並將其存儲在另一個字段中。所以我需要這個場景的代碼。 –
@Vivek Varma請分享表格結構和一些示例數據作爲格式化文本。 –