[Résolu][MySQL] Cast d'un integer vers un champ time

Cast d'un integer vers un champ time [Résolu][MySQL] - SQL/NoSQL - Programmation

Marsh Posté le 29-12-2011 à 18:18:05    

Bonjour,
 
J'utilise MySQL 5.5.11 sous Toad for MySQL 5.0
J'ai une base de donnée avec un champ int(5) qui contient la durée d'un film en minute
 
Ex:
80
90
115
 
Je tente donc de convertir mon integer en durée en "Cast" avec cette commande:

Code :
  1. SELECT filename, title, cast(duration AS time) FROM content WHERE broadcaster_id = 'TST;


 
Cependant soit le résultat de ma requête est vide pour ce champ durée ou il m'affiche 00:01:15 pour une durée en minute de 115.
Ce que j'attends comme résultat est 01:15:00 pour (1 heure et quinze minutes).
 
J'ai essayé avec des

Code :
  1. cast(duration*60 AS time)

et autre mais sans résultat.
 
Pouvez-vous me dire ce qui ne va pas?
 
Merci d'avance.


Message édité par Sethenssen le 12-01-2012 à 21:39:45
Reply

Marsh Posté le 29-12-2011 à 18:18:05   

Reply

Marsh Posté le 02-01-2012 à 16:58:57    

Je te propose d'utiliser :

Code :
  1. SEC_TO_TIME(duration * 60)


Dont voici la description dans la doc de MySQL :
http://dev.mysql.com/doc/refman/5. [...] ec-to-time

Reply

Marsh Posté le 03-01-2012 à 01:29:00    

tu fais comme en vrai
division entiere +":"+ modulo
evidemment tu rajoute les zero hein
CONCAT_WS (':', LPAD((duration DIV 60),2,'00'), LPAD((duration MOD 60),2,'00')) as truc


Message édité par pop-pan le 03-01-2012 à 01:31:55

---------------
Plop !
Reply

Marsh Posté le 12-01-2012 à 21:39:18    

spamoa a écrit :

Je te propose d'utiliser :

Code :
  1. SEC_TO_TIME(duration * 60)


Dont voici la description dans la doc de MySQL :
http://dev.mysql.com/doc/refman/5. [...] ec-to-time


 
 
Merci à vous deux
Je vais opter pour le SEC_TO_TIME qui est si simple
 
Encore merci !
 
 :jap:

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed