Pull to refresh
80
Sayan Malakshinov@xtender

FBCS, Oracle ACE, performance tuning expert

94
Subscribers
Send message
С чего это вы взяли? А по поводу временных ограничений на споже то, видимо, мало вы там что решали. Есть задачи, на которых в принципе не сможете пройти временные лимиты на интерпретируемых языках.
На spoj'e не делают разницы между языками и временем исполнения в отличие от acm.mipt.ru
Ну с sql*plus'а я бы точно не начал(вполне качественный и без замут). Я б начал про установку oracle portal,forms,reports на веблоджик… Вот уж где кривой инсталлер. До сих пор парюсь — завести не могу.
Как бэ логично… кому нужна СУБД? В первую очередь клиентам, во-вторую очередь — девелоперам, а дба нужны уже самой субд. Клиенты с sql*plus работать не будут — для них есть всякие формсы, репортсы, црмы и прочие плюшки. Девелоперы будут разрабатывать. А дба — придется работать с тем, что есть.
Хехъ, почему тогда не SQL Developer или JDeveloper? sql*plus уже даже заменен на SQL developer
интеграцию с Oracle WebLogic server, а также Oracle Database

А я из-за них на jdeveloper перешел. Все равно netbeans не скоро, наверное, возьмет все из jdeveloper'a.
Я не про все пункты вообще, я только про случай необходимой идентификации конкретной записи, иначе бы сиквенсы не придумывали ;)
В Oracle вы можете использовать rowid
Список измененных полей можно было просто иметь в битовой маске в определенном поле дабы не мучиться с введением спец значений
Я не настолько плохого мнения о читателях, да и мне думается, что те, про кого вы говорите(те которые ССЗБ), не читают такие топики.
А вы когда-нибудь внимательно читали? Если бы прочли и подумали, то этого комментария не писали бы. Не нравится эта таблица — выбирайте тогда, например, information_schema.global_variables, не нравится эта — возьмите любую другую более подходящую.
Надо заставлять :) Все-таки умение работать с бд — это очень важная часть и, как правило, именно там возникают проблемы архитектуры
Зачем проверять :) тут опять добавляется подзапрос + 2 функции
Итоговый запрос будет вида:
set @rownumber:=null;
select DATE_FORMAT(t.fday,'%Y.%m') as mon,count(e.id)
from
(
select
     @rownumber:=if(@rownumber is null,0,@rownumber+1) n,
     date_add('2010-01-01', interval @rownumber month) fday,
     date_add('2010-01-01', interval @rownumber+1 month) lday
from information_schema.columns t
limit 12
) t
left join events e
on e.`start_date`<t.lday and e.end_date>=t.fday
group by t.fday

Зачем городить огород? это тоже самое что и с кейсом, но добавляя подзапрос и лишние битовые операции. При том что и так есть даты начала и конца, незачем генерировать еще и массив битов для каждого месяца.
Можно и count, я показывал для наглядности и читабельности, чтобы можно было понять остальные возможности — легко добавить вариации и условия.
А так можно и просто count(if(… and ...,1,null))
Ксения, ну к чему спорить? :) я же показал пример выше:
select sysdate(),sysdate()-1 from dual
Выполните-посмотрите. Посмотрите документацию к datetime типу.
И свой код посмотрите:
DATE_FORMAT(t.end_date-1, '%m')
а не
DATE_FORMAT(t.end_date, '%m')-1
как, наверное, хотели…
Не день и не месяц, а одна секунда, я ошибся (не переключился с оракла):
select sysdate(),sysdate()-1 from dual
Да, в несколько групп один праздник не поместить, это точно. Точнее, это возможно, но тогда уж лучше if'ами case'ами.

Именно ифами/кейсами и можно в одну группу поместить. о чем собственно и топик…

Information

Rating
Does not participate
Date of birth
Registered
Activity

Specialization

Specialist
Ведущий
SQL
Базы данных
Linux
Oracle