1 (edited by Новичок 2024-04-14 09:58:42)

Topic: Вычисляемые поля в MySQL

Подскажите пожалуйста, как решить проблему вычисляемых полей в MySQL/
Может подскажите, какие есть варианты решить необходимые запросы.

Например, хочу посчитать количество оставшихся дней, но увы, в MySQL такое не получается

julianday(date_off) - julianday('now')

Посчитать возраст, тоже выдает ошибку

date('now') - brithday + (case when strftime('%m-%d', 'now', 'localtime') < strftime('%m-%d', brithday) then -1 else 0 end)

Замена текста на символ:

Case When oformlen = 1
THEN '+' ELSE ''     
END 

Подскажите, как это можно сделать через MySQL

Re: Вычисляемые поля в MySQL

Вынуть дату из БД

 myDate : TDateTime = SQLDateTimeToDateTime();

потом можете их как угодно арифметить  big_smile big_smile big_smile big_smile
   

Case When oformlen = 1
THEN '+' ELSE ''     
END 

в данном варианте вроди как не заменяется символ, а создается поле

3 (edited by Новичок 2024-04-15 02:09:37)

Re: Вычисляемые поля в MySQL

Подскажите пожалуйста, вычисляемые поля работают в MySQL или в них запрос немного отличается в отличии от SQLlite

Re: Вычисляемые поля в MySQL

Вычисляемые поля - это механизм сборки SQL-запроса.
А то, что есть разница в функциях, реализованных в SQLite и MySQL - это факт.
Смотрите документацию, сравнивайте...

Визуальное программирование: блог и телеграм-канал.

5 (edited by tcoton 2024-04-15 15:50:29)

Re: Вычисляемые поля в MySQL

Новичок wrote:

Подскажите пожалуйста, вычисляемые поля работают в MySQL или в них запрос немного отличается в отличии от SQLlite


Yes calculated fields are working when connected to MySQL, you just have to adapt the SQL Query to match MySQL syntax if an error occurs. The calculated fields are actually not stored in the database, they are written in plain text in the tables.ini file.

For date calculation, a quick search on internet like here : https://dev.mysql.com/doc/mysql-tutoria … tions.html

Re: Вычисляемые поля в MySQL

Новичок wrote:

Подскажите пожалуйста, вычисляемые поля работают в MySQL или в них запрос немного отличается в отличии от SQLlite

Про вычисляемые поля в MVDB ( https://k245.ru/mvdb/ispolzovanie-sql-v-mvdb.html ), но в основном про SQLite.
https://k245.ru/wp-content/uploads/2023/09/s7-1.png
Проверьте, используете ли вы скобки.
https://k245.ru/wp-content/uploads/2023/09/s13.png
Построитель выражений ориентирован на SQLite, если вы используете MySQL, то пишите SQL самостоятельно.

Визуальное программирование: блог и телеграм-канал.