Обновить

Компания Oracle выпустила новую версию своей базы данных Oracle 23c

Среди нововведений:

  • SELECT выражений без указания раздражающего FROM DUAL

select
  'Hello world'     as txt,
   7 * 6            as nmbr,
   sysdate          as sdate;
  • поддержка типа boolean (очень надеюсь что в ближайшее его завезут и в MySQL):

select true, false;

create table bool_test (
	val varchar2(10), 
	flg boolean
);

insert into bool_test values ('true'  , true );
insert into bool_test values ('false' , false);
insert into bool_test values ('null'  , null );
insert into bool_test values ('t'     ,'t'   );
insert into bool_test values ('yes'   ,'yes' );
insert into bool_test values ('True'  ,'True');
insert into bool_test values ('f'     ,'f'   );
insert into bool_test values ('0'     , 0    );

обратите внимание что строки 'y', 'yes', 't', 'true' неявно конвертируются в True, а значения 'n', 'no', 'f', 'false' в False в не зависимости от регистра и начальных/конечных пробелов. Число 0 сохраняется как False остальные любые числа как True

Поле типа boolean может быть использовано в where:

select * from bool_test where     flg;
select * from bool_test where not flg;

Вместе с новым типом данных введена новая функция to_boolean()

Некоторые плюшки из MySQL перенесены в Oracle. Например

  • DROP/CREATE TABLE IF [NOT] EXISTS

drop   table IF     EXISTS my_test;
create table IF NOT EXISTS my_test (num number, txt varchar2(10));
  • GROUP BY on expression aliases/position number

Все новые уже функции доступны на SQLize.online

Всего голосов 5: ↑5 и ↓0+5
Комментарии1

Как я, учась в айти, работаю на 15-тонном советском станке и автоматизирую его без CAM‑системы и комментариев

Мне 19. Днем я очный студент айтишник, а в остальное время — единственный человек в цеху, кто работает на 15-тонном советском горизонтально‑фрезерном станке ИР-500. Мозги у этого монстра под стать эпохе: древняя корейская стойка Fanuc 0-M 1982 года.

Сам ИР-500 — настоящий танк. По оси Z ездит сразу вся огромная чугунная коробка на рельсах.. А когда эта масса разгоняется, пол вибрирует, но сам станок стоит намертво. Он воспринимает дикие нагрузки на минимальных оборотах — как легкую прогулку.

Но есть проблема, передачу файлов через кабель он не поддерживает, CAM‑систему не подключить..
Для меня, привыкшего к созданию 3D‑моделей и визуализации всех траекторий в Fusion360 — было непросто адаптироваться.

Мои первые самостоятельные дни были очень болезненными, хотелось просто уволиться, ведь малейшая ошибка и невнимательность здесь — это не упавший сервер, а разнесенная фреза и тиски. Поэтому каждый первый запуск новой программы — это паранойя. Рука на остановке подачи, покадровый режим, минимальные перемещения и подача. И только когда фреза пускала стружку, я выдыхал и выкручивал подачу на максимум.

Пока детали требовали обработки в пару проходов, было все отлично. Но потом...

Началось спагетти из g‑кода. Пошли заказы на глубокое торцевание (или более сложные траектории, но сегодня не об этом), где можно потратить пол смены на написание программы.

Как я, учась в айти, работаю на 15-тонном советском станке и автоматизирую его без CAM‑системы и комментариев

Публикации