Записки опиумного мака

обо всем по немногу

Шпаргалка по SQL и PL/SQL Oracle: update из другой таблицы

Для обновления поля или полей в таблице данными из другой таблицы можно воспользоваться так, как показано в примере: update billgrouplog bglset bgl.startdate = (select bg.changed    from atlant.billgroup bg    where bg.cobillgroup = bgl.cobillgroup)where bgl.uptodate = ‘01.01.2500’    and exists (select 1    from atlant.billgroup bg    where bg.cobillgroup = bgl.cobillgroup)

Продолжить чтение

Шпаргалка по SQL и PL/SQL Oracle: insert в таблицу группированных данных

Если требуется сгруппировать данные по какой либо таблице и перенести в другую таблицу с уникальным полем первичным ключем, то может возникнуть проблема. Лучше рассмотреть не примере -> Такой код не будет работать: insert into BCDRAGGREGATOR select S_COAGGREGATOR.nextval as coaggregator,        numident as identificator,        coerror,        count(*) bcdrcount     from badcdr group by numident,          coerror […]

Продолжить чтение

32767 = 32767

Сегодня разбирался как работает одна штука в известной биллинговой системе. Наткнулся на SQL запрос, чуть его сокращаю для наглядности: SELECT numvolume.*  FROM numvolume, atlant.numvolumebind, kaPhNumberType WHERE numvolumebind.conumvolume = numvolume.conumvolume   AND numvolume.cophnumbertype = kaPhNumberType.cophnumbertype   AND numvolumebind.conumgroup IN (14229)   AND (   numvolume.coc = 32767        OR 32767 = 32767       )   AND (NULL IS […]

Продолжить чтение