2015-12-07 52 views
1

這是查詢的工作版本。我只需要用AS保存新的價值。感謝你給安迪。如何使用TIME_FORMAT從SQL數據庫將HH:MM:SS轉換爲H:SS AM/PM

$Wednesday = mysqli_query($conn, "SELECT *,TIME_FORMAT(class_start,'%l:%i %p') AS new_class_start,TIME_FORMAT(class_end,'%l:%i %p') AS new_class_end 
FROM wednesday INNER JOIN classes_new ON wednesday.classes_id=classes_new.classes_id WHERE classes_status='0' AND class_start NOT LIKE ''ORDER BY class_start;"); 

我有兩個數據類型TIME列的表,當我運行下面的時間值對查詢返回爲hh:mm:ss的。我想將其轉換爲h:mm AMPM。我曾嘗試使用JavaScript,但我相信這是可能的在MySQL中。我試圖使用TIME_FORMAT,但我認爲我得到了錯誤的語法。在下面的查詢運行後,值在while循環中回顯。請提供轉換時間值的最佳方法。 謝謝!

$Wednesday = mysqli_query($conn, "SELECT *,TIME_FORMAT(wednesday.class_start,'%h:%i %p') 

從週三INNER JOIN classes_new ON wednesday.classes_id = classes_new.classes_id WHERE classes_status = '0' 和class_start NOT LIKE '' ORDER BY class_start;「);

+0

工作版本的查詢:$週三= mysqli_query($康恩,「SELEC T *,TIME_FORMAT(class_start,'%1:%i%p')AS new_class_start,TIME_FORMAT(class_end,'%l:%i%p')AS new_class_end FROM wednesday INNER JOIN classes_new ON wednesday.classes_id = classes_new.classes_id WHERE classes_status ='0'AND class_start NOT LIKE''ORDER BY class_start;「); –

回答

1

這應該工作

TIME_FORMAT(your_time,"%h:%i %p") AS your_time_formatted; 

編輯 添加

+0

我曾嘗試使用該函數:$ Wednesday = mysqli_query($ conn,「SELECT * DATE_FORMAT(your-date,」%h:%i%p「) FROM wednesday INNER JOIN classes_new ON wednesday.classes_id = classes_new .classes_id WHERE classes_status ='0'AND class_start NOT LIKE''ORDER BY class_start;「);但查詢不會運行,我可以問問我哪裏出錯了? –

+0

看到我編輯的答案,你應該使用TIME_FORMAT。但是,你用數據庫中的實際列名取代了「你的日期」嗎?並且在SELECT * – Andy

+0

後,您也在該查詢中缺少逗號符號,我確實將其替換爲... *和TIME_FORMAT之間是否缺少逗號?如果是的話,我已經糾正它 –

相關問題