2017-08-15 30 views
-1

我要執行這個SQL:如何使用mysql FROM_UNIXTIME在python

sql = "SELECT FROM_UNIXTIME(time,'%H') FROM aaa" 

但它會生成以下錯誤消息:

not enough arguments for format string 

我找到了一些答案,其中推薦我'%%'更改'%',但我必須在sql中使用此符號。如何解決這個問題?

+0

也許這將幫助你:https://stackoverflow.com/questions/10903497/python-mysqldb-where-sql-like – Some1Else

+0

可能重複的[Python MySQLdb WHERE SQL LIKE](https://stackoverflow.com/questions/10903497/python-mysqldb-where-sql-like) – Raf

+0

@Raf這是如何複製到你鏈接的問題?這也是Python中的SELECT sql查詢,該部分是真實的。但是他在這裏面臨的問題與FROM_UNIXTIME()有關,在你所鏈接的問題中根本沒有提及 –

回答

0

我相信問題是與格式參數在

FROM_UNIXTIME(time,'%H') 

MySQL的FROM_UNIXTIME()返回一個版本 UNIX_TIMESTAMP的日期/日期。根據 函數(數字或字符串)的上下文,返回值爲'YYYYY-MM-DD HH:MM:SS'格式 或YYYYMMDDHHMMSS.uuuuuu格式。如果指定,則根據給定的格式字符串格式化結果 。

這意味着'%H'是無效的。你應該選擇之間:

  • 'YYYYY-MM-DD HH:MM:SS'
  • YYYYMMDDHHMMSS.uuuuuu

一些例子:

http://www.w3resource.com/mysql/date-and-time-functions/mysql-from_unixtime-function.php