Mysql
 sql >> база данни >  >> RDS >> Mysql

Използване на IST време в mysql заявка

Можете да извлечете настройката на часовата зона за текущата MySQL сесия с SQL оператор:

mysql> SELECT @@session.time_zone;

Ако DBA не е задал часовата зона на MySQL, по подразбиране ще бъде зададена стойност SYSTEM , което представлява часовата зона на операционната система.

http://dev.mysql.com/doc /refman/5.5/en/time-zone-support.html

ПОСЛЕДВАНЕ:

В предикат като във вашия примерен SQL оператор:

select * from mytable where dt > current_ist_datetime

(предвид dt и current_ist_datetime от тип данни DATETIME )сравняването на стойностите ще бъде независимо от всяко преобразуване на часова зона, тъй като няма информация за часова зона, свързана с DATETIME стойност.

Тоест стойността, върната от колона от тип данни DATETIME не се влияе от настройката time_zone на MySQL сървъра (SELECT @@global.time_zone ) или на MySQL сесията (SELECT @@session.time_zone ).

Стойността, върната от NOW() функцията обаче ще бъде повлияна от настройката time_zone на сесията.

За да получите това върнато в IST, уверете се, че time_zone за сесията е зададена правилно, напр.

SET VARIABLES time_zone = "+05:30"

(N.B. Ако сесията е извлечена от и върната от набор от връзки, другите потребители на набора може да не очакват различна time_zone;...)

(ЗАБЕЛЕЖКА:горното напълно пренебрегва объркването, въведено от JDBC драйвера, причинено от "несъответствието на импеданса" (разлики) между изпълнението на MySQL на типа данни DATETIME и изпълнението на Java на обект Date. Ако предавате стойности на DATETIME през JDBC връзка, това вече не е объркване.)



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. mysql-connector python 'IN' оператор, съхранен като списък

  2. MySQL вмъкване в DATETIME:безопасно ли е да се използва ISO::8601 формат?

  3. Може ли MySQL тригер да симулира ограничение CHECK?

  4. Как да изпълня mysql заявка в wordpress?

  5. Объркваща SQL грешка в SELECT NULL, *, NULL, NULL