sql >> Database teknologi >  >> RDS >> Mysql

Sådan indsætter du en mikrosekund-præcision datetime i mysql?

MySql 5.6+ understøtter brøkdele af sekunder i tidsværdier, mens tidligere versioner ikke gør det.

En standard datetime kolonne vil ikke indeholde mikrosekundværdier, mens en datetime(6) vilje. Du kan teste det i MySql 5.6:

CREATE TABLE your_table (
  d1 datetime,
  d2 datetime(6)
);

INSERT INTO your_table VALUES
('2011-11-11 11:11:11.111111', '2011-11-11 11:11:11.111111');

SELECT MICROSECOND(d1) as m1, MICROSECOND(d2) as m2
FROM your_table;

m1 | m2
-----------
0  | 111111

Hvis du ikke bruger MySql 5.6+, vil jeg foreslå, at du bruger to kolonner, en til datetime-delen og en til mikrosekunderne:

CREATE TABLE your_table (
  dt datetime,
  us int
);

INSERT INTO your_table VALUES
('2011-11-11 11:11:11.111111', MICROSECOND('2011-11-11 11:11:11.111111'));


  1. Upsert med en transaktion

  2. Brug bundet parameter flere gange

  3. Er pymysql-forbindelsestråd sikker? Er pymysql markørtråd sikker?

  4. hvad er forskellen mellem '!=' og '<>' i mysql