Децибелы ЭТО ОЧЕНЬ ПРОСТО!
Ю.БАЛТИН (YL2DX),
г.Рига.
Когда требуется сравнить какие-нибудь величины, это можно сделать по-разному. Можно, например, разделив эти величины одну на другую, сказать — Р1 больше чем Р2 в 3 раза, или Р1, меньше чем Р2 в 28 раз. Если нам понадобится далее вести какие-то расчеты, мы будем пользоваться отвлеченными числами 3, или 28, или 1/28 (иногда для уточнения добавляя слово «раз»).
В ряде случаев для расчетов или для большей наглядности сравнения оказывается удобнее логарифмировать отношение величин и оперировать далее с числом logа(Р1/Р2). Известно, что применение логарифмов упрощает математические расчеты, в частности, позволяет вместо умножения и деления пользоваться сложением и вычитанием. При большом диапазоне изменений какой-либо величины логарифмический масштаб позволяет лучше разглядеть на одном и том же графике и малые, и большие ее относительные изменения.
Чтобы различать, имеем ли мы дело с числом «раз» или с его логарифмом, а также чтобы зафиксировать, каким основанием мы пользуемся при логарифмировании (числом 10, числом e=2,71828 или иным), следует присвоить этому логарифму какое-нибудь название. В системе СИ в качестве относительной логарифмической единицы отношения мощностей Р1, и Р2 принят десятичный логарифм Ig(Р1/Р2). Эта единица называется бел (Б).
На практике этой довольно крупной единицей оказалось не очень удобно оперировать, поэтому ее «разменивают» на единицы, в десять раз меньшие — децибелы. Соотношение двух уровней мощности Р
Множитель 10 в формуле (1) появился потому, что десять децибел как раз и есть один бел. Таким образом, не повезло изобретателю телефона А.Г.Беллу — мало того, что единицу его имени укоротили на одну букву «л», так еще и пользуются лишь десятыми долями.
Теперь разберемся с отношениями напряжений или токов. Вспомним из школьного курса, что мощность в линейной цепи равна:
Отсюда легко видеть, что:
а значит:
Из школьного же курса вспомним:
Из равенств (2) и (3) вытекает следующее:
Это и есть формула взаимосвязи между «белами по мощности» и «белами по напряжению» в одной и той же цепи, если в ней выполняется закон Ома. Ну, а если мы намерены пользоваться десятыми долями бела, то обе половины этого уравнения необходимо умножить на 10. Отсюда следует, что при сравнении величин напряжений (U1 и U2) или токов (I1 и l2), их соотношение в децибелах:
Полезно запомнить несколько характерных значений, приведенных в таблице.
Если напряжение на резисторе увеличить вдвое (на +6 дБ «по напряжению»), то и протекающий через него ток увеличится вдвое (на +6 дБ «по току»), а мощность, выделяемая этим резистором, станет вчетверо больше—опять-таки на +6 дБ («по мощности»). Чтобы уменьшить мощность в 10 раз (-10 дБ), нужно снизить приложенное к резистору напряжение в 3,162 раза (-10 дБ), отчего ток по закону Ома тоже уменьшится в 3,162 раза (-10 дБ).
Поскольку мощность в линейной цепи пропорциональна квадрату напряжения или тока, численные значения соотношений их величин, выраженные в децибелах, остаются одними и теми же как при сравнении мощностей, так и при сравнении напряжений или токов:
В случае ослабления сигнала (когда отношение Р1/Р2 меньше единицы), логарифм становится отрицательным, следовательно, отрицательным становится и коэффициент передачи данной цепи, выраженный в децибелах. Для вычисления общего коэффициента передачи нескольких последовательно соединенных цепей или устройств достаточно просуммировать значения в децибелах с учетом их знаков (+) или (-).
намного удобнее, чем перемножать исходные значения в разах.
При вычислении коэффициента передачи различных устройств (например, усилительного каскада) во многих случаях мы имеем дело с разными входным и выходным сопротивлениями; в нелинейных цепях напряжение и ток взаимно не пропорциональны, а мощность не связана с тем и другим квадратичной зависимостью. Коэффициенты передачи таких цепей по току:
и по напряжению:
различны и в разах, и в децибелах; коэффициент передачи по мощности:
а в децибелах:
Равенство (6) к этим случаям не относится, но по отдельности изменения или соотношения величин тока или напряжения на одном и том же линейном сопротивлении (например, на сопротивлении нагрузки нелинейного усилителя) все равно выражаются в децибелах формулами (4) и (5), а изменения уровня мощности — формулой (1).
Зачем возиться с логарифмами? Во-первых, логарифмическая шкала наиболее естественна для наших органов чувств, в частности, для слуха. Закон логарифмической зависимости ощущений от силы воздействия сформулирован Вебером и Фехнером (обычно называется законом Вебера) — «одинаковые относительные изменения раздражающей силы вызывают одинаковые приращения слухового ощущения, т.е. слуховое ощущение пропорционально логарифму раздражающей силы».
Практически, 1 дБ — это наименьшая ступенька изменения интенсивности звука, едва обнаруживаемая на слух, изменение на 6 дБ воспринимается на слух как хорошо заметное (но небольшое — примерно вдвое громче), на 10 дБ — значительное, а на 20 дБ—как весьма большое. Каждый балл по шкале S системы RST — это 6 дБ (или 0,6 бела), так что мы, особо не задумываясь, занимаемся логарифмированием каждый раз, когда начинаем очередную связь в эфире, передавая рапорт корреспонденту.
Во-вторых, значения величин, с которыми нередко приходится сталкиваться, в обычном исчислении бывает трудно соразмерить—скажем, 1 микровольт отличается от 1 киловольта в 1 000 000 000 раз. А в децибелах разница выражается вполне удобной величиной 180 дБ. Мощности, которые выделятся на одном и том же сопротивлении при приложении к нему этих напряжений, будут отличаться астрономически — в 1 000 000 000 000 000 000 раз, а в децибелах — все на те же 180 дБ. С другой стороны, если, например, сравнивать 1,03 мА и 1,37 мА, то их отличие выразится вполне заметной величиной — 2,5 дБ.
Децибелы |
0 |
+1 (-1) |
+3 (-3) |
+6 (-6) |
+10 (-10) |
+20 (-20) |
+40 (-40) |
+60 (-60) |
Отношение мощностей P1/P2 |
1 |
1,26 (0,79) |
2 (0,5) |
4 (0,25) |
10 (0,1) |
100 (0,01) |
104 (10-4) |
106 (10-6) |
Отношение напряжений или токов U1/U2 или I1/I2 |
1 |
1,12 (0,89) |
1,41 (0,707) |
2 (0,5) |
3,16 (0,316) |
10 (0,1) |
100 (0,01) |
1000 (10-3) |
Если запомнить характерные значения из таблицы, то можно очень легко пересчитывать в уме и любые другие величины отношений в децибелы и обратно. Например, 4 дБ—это (3 дБ +1 дБ). Значит, отношение мощностей (2×1,26)= 2,52 раза или отношение напряжениий (1,41 х 1,12) =1,6 раза. Или, к примеру, отношение двух значений тока равно 17 раз, то есть (10×1,7). 10 раз по току — это 20 дБ, а 1,7 раза — между 1,41 и 2, значит, где-то около 4,5 дБ. В сумме (20 дБ + 4,5 дБ) = 24,5 дБ. Ну, а для чисел, кратных десяти, мнемоника очевидна.
Децибелы сами по себе — это величины не физические, а абстрактные, математические, такие же относительные, как и разы. Их нельзя пощупать руками как килограмм, метр или киловольт (нет… руками его, пожалуй, не стоит щупать… Hi). Их можно только вычислить, сравнивая реальные физические величины, и оперировать ими при расчетах. Но если мы устанавливаем в качестве эталона 0 дБ какое-то определенное значение физической величины, например, 1 Вт или 1 мкВ, то можем и прямо измерять в децибелах относительно него уровни мощности или, соответственно, напряжения. Обозначают такие единицы измерения теми же буквами «дБ», но с добавлением индекса: дБВт (децибел-ватт), дБмкВ (децибел-микровольт) и т. п. Например, мощность 27 дБВт—это то же самое, что 500 Вт, а -13 дБВт — 50 мВт. Напряжение -3 дБмкВ — 0,707 мкВ, а 23 дБмкВ — 14,14 мкВ.
В акустике за 0 дБ однозначно принято пороговое звуковое давление 2-10 Па, и децибел без дополнительного индекса прямо используется в качестве единицы уровня звукового давления.
На коротких волнах, по системе оценки сигнала RST, напряжение, равное 50 мкВ, на 50-омном входе приемника (S=9), в сущности, принято за ноль децибел. Каждый балл ниже девяти — это -6 дБ (в 2 раза меньше) от этого напряжения, а если сигнал сильнее, то S-метр покажет, на сколько децибел. Чтобы напряжение на входе приемника изменилось на 1 балл, нужно на столько же изменить мощность передатчика — на 6 дБ, то есть в 4 раза. Если получен RS 59+20 dB, то можно (и нужно бы!) смело уменьшать мощность передатчика на 30 дБ (т.е. в 1000 раз!!!) — все равно будет слышно достаточно громко — больше чем на S=7 (с запасом +2 дБ) (конечно, если «+20» было сказано не ради красного словца. . .Hi).
Надеюсь, что теперь понятно, почему «выжимать» 250 Вт из 200-ваттного передатчика просто глупо — увеличение силы сигнала менее чем на 1 дБ вообще никто не заметит, а вот сплэттер или щелчки по всему диапазону вполне реально могут испортить настроение многим.
О чувствительности приемника и S-метра
Чувствительность приемников часто измеряют в децибел-милливаттах (дБм) или дБмВт: 1 мВт = 0 дБм.
В сущности, измерять чувствительность в единицах мощности имеет больше смысла, чем в единицах напряжения, так так нам приходится иметь дело с сигналами разной формы — синусоидальными, шумовыми, шумоподобными и др. К тому же, мы избавляемся от необходимости уточнять, каково входное сопротивление приемника, и имеем возможность сравнивать чувствительность приемников с различными входными сопротивлениями. Эффективное напряжение 50 мкВ на 50-омном входе соответствует мощности -73 дБм. Этой же мощности соответствует напряжение 61,2 мкВ на 75-омном входе. Все это соответствует оценке S=9 сигнала по системе RST на частотах ниже 30 МГц. На УКВ за S=9 принята мощность -93 дБм (5 мкВ на 50-омном входе приемника).
Система оценки сигнала на слух по коду RST была предложена W2BSR в середине 30-х годов и с тех пор стала всемирно признанной. Стандарт градуировки S-метров был установлен IARU в 60-х годах, но когда его принимали, похоже, что ориентировались на не очень чувствительные приемники, а может быть, и на «тугоухих» операторов… (Hi). Впрочем, в те годы еще широко использовалась амплитудная модуляция (AM), в CW-приемниках сравнительно редко встречались хорошие узкополосные фильтры, а собственные шумы радиодеталей были побольше чем сейчас, так что чувствительность среднего любительского приемника была на порядок хуже, чем у современного.
Пороговая чувствительность порядка -130 дБм — очень высокая, но не редкая для современного КВ-приемника при узкой полосе в режиме CW (0,035 мкВ на 50-омном входе). Эта величина ниже, чем S=1 (-121 дБм) по S-метру. При таких уровнях имеется несоответствие слуховой (по таблице значений «S») и инструментальной (по S-метру) оценки силы сигнала — в чистом эфире, без помех, на хорошем приемнике сигнал с уровнем -125 или -130 дБм может вполне восприниматься на слух как хорошо читаемый «слабый», или «очень слабый» т.е. S=3 или S=2, a S-метр не будет показывать ничего. Но, по сути системы RST, если S=0, то сигнала просто не слышно совсем, a S=1 — это, по определению, «едва ощутимый сигнал». В тех же условиях сигнал мощностью -85 дБм может выглядеть как очень громкий (при достаточном коэффициенте усиления УНЧ приемника), но S-метр покажет не 9, а только 7 баллов — это типично, например, на 10-метровом диапазоне (впрочем, он как раз на границе KB и УКВ, где шкалы S-метров разные).
В трансиверах разных фирм стандарт IARU не очень-то соблюдается. Кроме того, чувствительность одного и того же приемника на разных диапазонах различается и может ступенчато регулироваться оператором (включением или выключением преду-силителей ВЧ и аттенюаторов), а шкала S-метра остается одна на все случаи. Если включен аттенюатор, то следует величину его затухания прибавить к показаниям S-метра, а если включен дополнительный пре-дусилитель — то величину его усиления из показаний S-метра вычесть. Разумеется, это относится только к случаю использования для приема полноразмерных согласованных антенн. Когда действующая высота антенны мала, или антенна не согласована со входом приемника, показания S-метра сами по себе ничего не скажут о реальном уровне сигнала в эфире.
В сущности, единственной полной и действительно объективной характеристикой уровня сигнала, создаваемого каким-либо передатчиком в точке приема, является напряженность поля, которую можно вычислить, разделив ЭДС на клеммах приемной антенны UA на ее действующую высоту hд:
Действующая высота (или действующая длина) антенны вычисляется по формуле:
т.е. зависит от длины волны l , коэффициента направленного действия D, КПД (?) антенны и ее входного сопротивления (идеальный полуволновой диполь в свободном пространстве имеет действующую длину l /?). Поэтому, если нужно более точно охарактеризовать силу сигнала от какой-либо станции, код RST надо дополнить сведениями об используемой приемной антенне и сообщить, показания ли это S-метра или оценка сделана на слух.
КВ и УКВ №4, 2001 г.
как считать децибелы? | Rmmedia.ru
et_
Member
- #1
Друзья, перерыл кучу ссылок и нифига не понял. Везде написано, например, как децибелы в мощность переводить относительно опорного уровня, а мне это не надо. Я хочу узнать по какому принципу они склыдываются и отнимаются. Например я знаю, что -6 дб + -6дб = 0 дБ, а, например, -6 дБ — -6 дБ = -9 дБ, но как бы это выразить с помощью формулы? Т. е. если складывть и отнимать по -6, то особых проблем вроде нет, а если например нужно -7,4 + -8,4 сдеалать? А ведь еще нужно учитывать на какой стороне по фазе величина располагается, но тут вроде понятно с этим по логике.
Короче, очень хочу в этом разобраться, помогите. Может и в фак бы тему засунуть.
DonPedro
Well-Known Member
- #2
Тут немного
_http://www.onliner.by/technologies/tech/dbm/
et_
Member
- #3
Это я читал, но там тоже нет ничего конкретного, либо я чего-то не понимаю. Там очень поверхностно затрунута арифметика логарифмов. Может кто растолкует?
Siluet
R.M.M. FireMaker
- #4
Дык вроде по ссылке выше все нормально объясненно, какие сомнения тебя терзают друг?
et_
Member
- #5
Сорри, я не могу врубиться. (-0.84)) ) ~ -1.85dB
Кажется, так
Еще парочку ссылок (туториал и таблица для быстрых оценок)
_http://www.steve-o.com/public/unc/decibel/objctive.html
_http://www.acousticalsurfaces.com/acoustic_IOI/101_12.htm
Реакции:
Cheateret_
Member
- #7
Спасибо большое!
Methafuzz
Loading. Please, wait.
..
- #8
Децибелы просто тупо складываются и вычитаются. Тем они и удобны.
et,
-6 дб + 6дб = 0 дБ
-6 дб + -6дб = -12 дБ
-7.4dB + -8.4dB = -15,8 dB
децибел это строго относительная величина (усилить на 6 дБ это все равно что в два раза), а если нужна абсолютная, то буковка приставляется в конце. Например,
Напряжение (относительно 0,775 Вольт) — dBu
Напряжение (относительно 1 Вольт) — dBV
Звуковое давление (не помню точно какой там опорный уровень) — dBSPL
DonPedro
Well-Known Member
- #9
Methafuzz,
Мы не во флейме, ты забыл поставить смайлик У тебя если два одинаковых сигнала сложить, так тише в два раза выходит. ..
Methafuzz
Loading. Please, wait…
- #10
Погоди, я говорю не о сложении сигналов, а о сложении коэфиициентов усиления
Вот если б мы складывали две синусоиды с уровнем -6 dBu каждая, тогда б действительно в итоге вышел 0. А там еще и фаза и спектр сигналов влияет, уже сложности.
Вопрос надо четче ставить, что там et складывает пусть уточнит
et_
Member
- #11
ну да, склаываю, хотя бы, 2 синусойды. .или чего там может складываю 2 розовых шума или малый с бочкой.. не суть, главное — 2 сигнала складываю.
Формула Дона Педро подходит, проверил неск раз. Моя бы воля, я б штук 10 спасибо поставил.
Methafuzz
Loading. Please, wait…
- #12
ну тогда понятно. Просто говорить: сигнал -6дБ — неправильно. Правильно было бы — 6 dBu
Хорошо, что хоть Дон Педро тебя правильно понял, я вот, видишь — нет…
et_
Member
- #13
А еще тогда вопрос, а как правильно обозначать сверху или снизу по оси фазы находится уровень?
например -6 dBu срерху оси и — 6 dBu снизу сложатся в совсем другое значение, нежели если бы они были, к примеру оба сверху. и как в таком случае считать? Вместо плюса в скобках минус ставить?
Methafuzz, и, если не сложно что есть спектр сигнала, в двух словах, и как он влияет?
Ortseam
Well-Known Member
- #14
<div>Цитата(et_ @ Jul 5 2007, 09:29 PM) [snapback]466000[/snapback]</div>
ну да, склаываю, хотя бы, 2 синусойды..или чего там может складываю 2 розовых шума или малый с бочкой.. не суть
[/b]Нажмите для раскрытия. ..
Очень даже суть. Потому что два розовых шума по -6 дадут -3. Две синфазные синусоиды по -6 дадут 0. Две противофазные синусоиды по -6 дадут минус бесконечность. А бочка с рабочим по -6 дадут все что угодно, в зависимости от того, по какому окну и с каким усреднением эти -6 получены
Вопрос ведь не в том, как получить децибел из линейного уровня. Вопрос в том, что этот уровень отражает. Мгновенную амплитуду? Амплитуду гармоники? Среднеквадратическое значение в коротком окне? Среднеквадратическое значение по всему файлу?
Когда разберешься с этими вопросами, с децибелами проблем не будет
et_
Member
- #15
Да нет, если иметь в виду сложение в одной точке по времени, то нет разницы:
Т. е. не знаю как это объяснить, ну если взять уровни сигналов в одной точке, ну например на третьей риске из тех, что с циферками. а на втором рисунке, тот фрагмент, что между третьей и четвертой ричкой без циферок.
А вы, наверное говорите про что-то типа среднего уровня? Или как он называется..
Ortseam
Well-Known Member
- #16
<div>Цитата(et_ @ Jul 6 2007, 10:21 AM) [snapback]466239[/snapback]</div>
Да нет, если иметь в виду сложение в одной точке по времени, то нет разницы.
[/b]Нажмите для раскрытия…
Дык для одной точки проще линейным уровнем пользоваться. Зачем тебе тогда вообще децибелы?
<div>Цитата(et_ @ Jul 6 2007, 10:21 AM) [snapback]466239[/snapback]</div>
А вы, наверное говорите про что-то типа среднего уровня? Или как он называется..
[/b]Нажмите для раскрытия…
Среднеквадратическое значение. RMS, если не по нашински. Оно более адекватно отражает громкость сигнала по сравнению, например, с пиковой амплитудой. Именно поэтому с ним и работают. И индикаторы в микшерах и обработках именно его и показывают.
Methafuzz
Loading. Please, wait…
- #17
<div>Цитата(et_ @ Jul 6 2007, 08:27 AM) [snapback]466155[/snapback]</div>
А еще тогда вопрос, а как правильно обозначать сверху или снизу по оси фазы находится уровень?
например -6 dBu срерху оси и — 6 dBu снизу сложатся в совсем другое значение, нежели если бы они были, к примеру оба сверху. и как в таком случае считать? Вместо плюса в скобках минус ставить?
[/b]Нажмите для раскрытия…
ну тебя пока поймешь… Минус в децибелах означает ослабление, плюс — усиление, причем всегда относительно чего-то. Был у меня сигнал (неважно какой), усилил я его на 6 дБ (то есть в два раза), то есть он изменился на +6 dB. Ослабил я его в два раза — он изменился на — 6 dB
Чтобы выражать абсолютные величины напряжения приставляется буковка. +6 dBu это в два раза больше опорного уровня 0,775 В, то есть 1.55 Вольт. +20 dBu это в десять раз больше опорного уровня, то есть 7,75 вольт. +40 dBu это в сто раз больше, +60 — в тысячу и тд. То же самое с минусом.
Измеритель уровня измеряет уже не относительное, а абсолютное отклонение сигнала от нулевой оси, неважно в какую сторону.
То есть, плюс/минус в децибелах и плюс/минус от оси это совершенно разные вещи. Ответ на твой вопрос такой: — 6 dBu это сигнал с размахом 0,39 вольт. Что вверх от оси что вниз, неважно. Измеритель уровня покажет — 6 dBu.
<div>Цитата(et_ @ Jul 6 2007, 08:27 AM) [snapback]466155[/snapback]</div>
что есть спектр сигнала, в двух словах, и как он влияет?
[/b]Нажмите для раскрытия…
когда у тебя например гитара играет ноту «ля», то там не только 440 Гц присутствует а еще целая куча призвуков (обертонов) с самыми разными частотами и фазами. Для сигнала спектр это его состав. Какие призвуки с какими частотами в него входят. То что ты видишь на экране спектроанализатора.
Сигналы с разным составом несут в себе разную энергию, поэтому и суммируются неодинаково. тебе vitold привел пример. Две противофазные синусоиды суммируются в ноль, а если фаза совпадает, то амплитуда возрастает в два раза. Вообще проще на париться, именно для этого есть измерители уровня.
В Вейвлабе например Global Analysis показывает пиковые и RMS уровни, как средние по файлу, так и максимальные/минимальные, и в точке где курсор находится. Полный комплект.
zindersons
Member
- #18
Вот ещё полезная информация из Википедии:
При некотором навыке операции с децибелами вполне реально выполнять в уме. Более того, нередко это очень удобно: вместо умножения, деления, возведения в степень и извлечения корня удается обходиться сложением и вычитанием «децибельных» единиц.
Для этого полезно помнить и научиться применять несложную таблицу:
1 дБ — в 1.25 раза,
3 дБ — в 2 раза,
10 дБ — в 10 раз.
Отсюда, раскладывая «более сложные значения» на «составные», получаем:
6 дБ = 3 дБ + 3 дБ — в 2·2 = в 4 раза,
9 дБ = 3 дБ + 3 дБ + 3 дБ — в 2·2·2 = в 8 раз,
12 дБ = 4 · (3 дБ) — в 24 = в 16 раз
и т. п., а также:
13 дБ = 10 дБ + 3 дБ — в 10·2 = в 20 раз,
20 дБ = 10 дБ + 10 дБ — в 10·10 = в 100 раз,
30 дБ = 3 · (10 дБ) — в 10³ = в 1000 раз
и т. п.
Сложению (вычитанию) значений в дБ соответствует умножение (деление) самих отношений. Отрицательные значения дБ соответствуют обратным отношениям. Например:
уменьшение мощности в 40 раз — это в 4·10 раз или на −(6 дБ + 10 дБ) = −16 дБ;
увеличение мощности в 128 раз это 27 или на 7·(3 дБ) = 21 дБ;
снижение напряжения в 4 раза эквивалентно снижению мощности (величины второго порядка) в 4² = 16 раз; и то и другое при R1 = R0 эквивалентно снижению на 4·(−3 дБ) = −12 дБ.Нажмите для раскрытия…
Последнее редактирование:
Alexey Lukin
Well-Known Member
- #19
Это верно только для энергетических величин (мощности).
Для амплитуды — всё отличается в 2 раза.
Типы данных и функции даты и времени — SQL Server (Transact-SQL)
- Статья
- 7 минут на чтение
Применяется к: SQL Server База данных SQL Azure Azure SQL Управляемый экземпляр Azure Synapse Analytics
Разделы этой статьи охватывают все типы данных и функции даты и времени Transact-SQL.
- Типы данных даты и времени
- Функции даты и времени
- Функции, возвращающие системные значения даты и времени
- Функции, которые возвращают части даты и времени
- Функции, которые возвращают значения даты и времени из своих частей
- Функции, возвращающие значения даты и разницы во времени
- Функции, изменяющие значения даты и времени
- Функции, которые устанавливают или возвращают функции формата сеанса
- Функции, проверяющие значения даты и времени
- Статьи, связанные с датой и временем
Типы данных даты и времени
Типы данных даты и времени Transact-SQL перечислены в следующей таблице:
Тип данных | Формат | Диапазон | Точность | Размер хранилища (байты) | Определяемая пользователем точность долей секунды | Смещение часового пояса |
---|---|---|---|---|---|---|
время | чч:мм:сс[. ннннннн] | 00:00:00.0000000 до 23:59:59.9999999 | 100 наносекунд | от 3 до 5 | Да | № |
дата | ГГГГ-ММ-ДД | 01-01-0001 по 31-12-9999 | 1 день | 3 | № | № |
малая дата и время | ГГГГ-ММ-ДД чч:мм:сс | 1900-01-01 по 2079-06-06 | 1 минута | 4 | № | № |
дата-время | ГГГГ-ММ-ДД чч:мм:сс[.nnn] | 1753-01-01 по 9999-12-31 | 0,00333 секунды | 8 | № | № |
дата-время2 | ГГГГ-ММ-ДД чч:мм:сс[.nnnnnn] | 0001-01-01 00:00:00.0000000 до 9999-12-31 23:59:59.9999999 | 100 наносекунд | от 6 до 8 | Да | № |
смещение даты и времени | ГГГГ-ММ-ДД чч:мм:сс[.нннннн] [+|-]чч:мм | 0001-01-01 00:00:00.0000000 до 9999-12-31 23:59:59. 9999999 (в формате UTC) | 100 наносекунд | от 8 до 10 | Да | Да |
Примечание
Тип данных Transact-SQL rowversion не является типом данных даты или времени. timestamp является устаревшим синонимом rowversion .
Функции даты и времени
В следующих таблицах перечислены функции даты и времени Transact-SQL. Дополнительные сведения о детерминизме см. в разделе Детерминированные и недетерминированные функции.
Функции, возвращающие системные значения даты и времени
Transact-SQL извлекает все системные значения даты и времени из операционной системы компьютера, на котором работает экземпляр SQL Server.
Более точные системные функции даты и времени
Начиная с SQL Server 2008 (10.0.x), компонент Database Engine извлекает значения даты и времени с помощью Windows API GetSystemTimeAsFileTime(). Точность зависит от аппаратного обеспечения компьютера и версии Windows, на которой работает экземпляр SQL Server. Этот API имеет фиксированную точность в 100 наносекунд. Используйте Windows API GetSystemTimeAdjustment() для определения точности.
Функция | Синтаксис | Возвращаемое значение | Тип возвращаемых данных | Детерминизм |
---|---|---|---|---|
SYSDATETIME | SYSDATETIME ( ) | Возвращает значение datetime2(7) , содержащее дату и время компьютера, на котором работает экземпляр SQL Server. Возвращаемое значение не включает смещение часового пояса. | дата/время2(7) | Недетерминированный |
SYSDATETIMEOFFSET | SYSDATETIMEOFFSET ( ) | Возвращает значение datetimeoffset(7) , содержащее дату и время компьютера, на котором работает экземпляр SQL Server. Возвращаемое значение включает смещение часового пояса. | смещение даты и времени(7) | Недетерминированный |
SYSUTCDATETIME | SYSUTCDATETIME ( ) | Возвращает значение datetime2(7) , содержащее дату и время компьютера, на котором запущен экземпляр SQL Server. Функция возвращает значения даты и времени в виде времени UTC (Всемирное скоординированное время). | дата/время2(7) | Недетерминированный |
Функции системной даты и времени более низкой точности
Функция | Синтаксис | Возвращаемое значение | Тип возвращаемых данных | Детерминизм |
---|---|---|---|---|
CURRENT_TIMESTAMP | CURRENT_TIMESTAMP | Возвращает значение datetime , содержащее дату и время компьютера, на котором работает экземпляр SQL Server. Возвращаемое значение не включает смещение часового пояса. | дата-время | Недетерминированный |
ПОЛУЧИТЬДАТУ | ПОЛУЧИТЬДАТУ ( ) | Возвращает значение datetime , содержащее дату и время компьютера, на котором работает экземпляр SQL Server. Возвращаемое значение не включает смещение часового пояса. | дата-время | Недетерминированный |
ПОЛУЧИТЬ ДАТУ | ПОЛУЧИТЬ ДАТУ ( ) | Возвращает дату и время , содержащее дату и время компьютера, на котором работает экземпляр SQL Server. Функция возвращает значения даты и времени в виде времени UTC (Всемирное скоординированное время). | дата-время | Недетерминированный |
Функции, возвращающие части даты и времени
Функция | Синтаксис | Возвращаемое значение | Тип возвращаемых данных | Детерминизм |
---|---|---|---|---|
DATE_BUCKET | DATE_BUCKET ( датапарт , номер , дата , происхождение ) | Возвращает значение, соответствующее началу каждого сегмента даты и времени из метки времени, определенной параметром origin , или значением origin по умолчанию 1900-01-01 00:00:00. 000 , если параметр origin не указано. | Тип возвращаемого значения зависит от аргумента, предоставленного для даты . | Недетерминированный |
ДАТАИМЯ | ДАТАИМЯ ( датачасть , дата ) | Возвращает строку символов, представляющую указанную датучасть указанной даты. | нварчар | Недетерминированный |
ДАТАЧАСТЬ | DATEPART ( датапарт , дата ) | Возвращает целое число, представляющее указанную часть даты из указанных дата . | Интервал | Недетерминированный |
ДАТЕТРУНК | DATETRUNC ( дата, часть , дата, ) | Возвращает входную дату , усеченную до указанной даты . | Тип возвращаемого значения зависит от аргумента, предоставленного для даты . | Недетерминированный |
ДЕНЬ | ДЕНЬ ( дата ) | Возвращает целое число, представляющее дневную часть указанного числа 9.0342 дата . | Интервал | Детерминированный |
МЕСЯЦ | МЕСЯЦ ( дата ) | Возвращает целое число, представляющее месячную часть указанной даты . | Интервал | Детерминированный |
ГОД | ГОД ( дата ) | Возвращает целое число, представляющее часть года указанной даты . | ряд | Детерминированный |
Функции, возвращающие значения даты и времени из своих частей
Функция | Синтаксис | Возвращаемое значение | Тип возвращаемых данных | Детерминизм |
---|---|---|---|---|
DATEFROMPARTS | DATEFROMPARTS ( год , месяц , день ) | Возвращает значение даты для указанного года, месяца и дня. | дата | Детерминированный |
ДАТАВРЕМЯ2ОТ ЧАСТЕЙ | DATETIME2FROMPARTS ( год , месяц , день , час , минута , секунд , дроби 3, точность ) Возвращает значение datetime2 для указанной даты и времени с указанной точностью. | дата-время2 ( точность ) | Детерминированный | |
ДАТАВРЕМЯ ОТ ЧАСТЕЙ | DATETIMEFROMPARTS ( год , месяц , день , час , минута , секунды , миллисекунды ) | Возвращает значение datetime для указанной даты и времени. | дата-время | Детерминированный |
DATETIMEOFFSETFROMPARTS | DATETIMEOFFSETFROMPARTS ( Год , Месяц , День , час , минута , секунд , Фракции , HOFFSET , MITEMNIT_OFFET_OFFET , , . Возвращает значение datetimeoffset для указанной даты и времени с указанными смещениями и точностью. | смещение даты и времени ( точность ) | Детерминированный | |
SMALLDATETIMEFROMPARTS | SMALLDATETIMEFROMPARTS ( год , месяц , день , час , минута ) | Возвращает значение smalldatetime для указанных даты и времени. | малая дата и время | Детерминированный |
TIMEFROMPARTS | TIMEFROMPARTS ( час , минута , секунд , дроби , точность ) | Возвращает значение time для указанного времени с указанной точностью. | время( точность ) | Детерминированный |
Функции, возвращающие значения даты и разницы во времени
Функция | Синтаксис | Возвращаемое значение | Тип возвращаемых данных | Детерминизм |
---|---|---|---|---|
РАЗНИЦА ДАТЫ | DATEDIFF ( datepart , startdate , enddate ) | Возвращает количество дат или временных границ datepart , пересекаемых между двумя указанными датами. | Интервал | Детерминированный |
DATEDIFF_BIG | DATEDIFF_BIG ( datepart , startdate , enddate ) | Возвращает количество дат или временных границ datepart , пересекаемых между двумя указанными датами. | большое число | Детерминированный |
Функции, изменяющие значения даты и времени
Функция | Синтаксис | Возвращаемое значение | Тип возвращаемых данных | Детерминизм |
---|---|---|---|---|
ДАТАДОБАВИТЬ | DATEADD ( датачасть , номер , дата ) | Возвращает новое значение datetime , добавляя интервал к указанному дата часть указанной дата . | Тип данных аргумента дата | Детерминированный |
КОНМЕСЯЦ | КОНМЕСЯЦА ( start_date [ month_to_add ] ) | Возвращает последний день месяца, содержащего указанную дату, с необязательным смещением. | Тип возвращаемого значения — это тип аргумента start_date или тип данных date . | Детерминированный |
СМЕЩЕНИЕ ПЕРЕКЛЮЧАТЕЛЯ | SWITCHOFFSET ( DATETIMEOFFSET , часовой пояс ) | SWITCHOFFSET изменяет смещение часового пояса значения DATETIMEOFFSET и сохраняет значение UTC. | datetimeoffset с дробной точностью DATETIMEOFFSET | Детерминированный |
TODATETIMEOFFSET | TODATETIMEOFFSET ( выражение , часовой пояс ) | TODATETIMEOFFSET преобразует значение datetime2 в значение datetimeoffset. TODATETIMEOFFSET интерпретирует значение datetime2 по местному времени для указанного часового пояса. | datetimeoffset с дробной точностью аргумента datetime | Детерминированный |
Функции, которые устанавливают или возвращают функции формата сеанса
Функция | Синтаксис | Возвращаемое значение | Тип возвращаемых данных | Детерминизм |
---|---|---|---|---|
@@DATEFIRST | @@DATEFIRST | Возвращает текущее значение для сеанса SET DATEFIRST. | крошечный | Недетерминированный |
УСТАНОВИТЬ ПЕРВУЮ ДАТУ | УСТАНОВИТЬ ДАТУПЕРВЫЙ { номер | @ номер_переменная } | Устанавливает первый день недели в число от 1 до 7. | Неприменимо | Неприменимо |
УСТАНОВИТЬ ФОРМАТ ДАТЫ | УСТАНОВИТЬ ФОРМАТ ДАТЫ { формат | @ format_var } | Устанавливает порядок частей даты (месяц/день/год) для ввода данных datetime или smalldatetime . | Неприменимо | Неприменимо |
@@ЯЗЫК | @@ЯЗЫК | Возвращает название используемого языка. @@LANGUAGE не является функцией даты или времени. Однако настройка языка может повлиять на вывод функций даты. | Неприменимо | Неприменимо |
НАСТРОЙКА ЯЗЫКА | УСТАНОВИТЬ ЯЗЫК { [ N ] ‘ язык ‘ | @ языковая_переменная } | Задает языковую среду для сеанса и системных сообщений. SET LANGUAGE не является функцией даты или времени. Однако настройка языка влияет на вывод функций даты. | Неприменимо | Неприменимо |
sp_helplanguage | sp_helplanguage [ [ @language = ] ‘ язык ‘ ] | Возвращает информацию о форматах даты для всех поддерживаемых языков. sp_helplanguage не является хранимой процедурой даты или времени. Однако настройка языка влияет на вывод функций даты. | Неприменимо | Неприменимо |
Функции, проверяющие значения даты и времени
Функция | Синтаксис | Возвращаемое значение | Тип возвращаемых данных | Детерминизм |
---|---|---|---|---|
ИСДАТА | ISDATE (выражение ) | Определяет, имеет ли входное выражение datetime или smalldatetime допустимое значение даты или времени. | Интервал | ISDATE является детерминированным, используется только с функцией CONVERT, когда указан параметр стиля CONVERT и когда стиль не равен 0, 100, 9, или 109. |
Артикул | Описание |
---|---|
ФОРМАТ | Возвращает значение, отформатированное в указанном формате и с необязательным языком и региональными параметрами. Используйте функцию FORMAT для форматирования дат/времени и числовых значений в виде строк с учетом региональных настроек. |
ПРИведение и ПРЕОБРАЗОВАНИЕ (Transact-SQL) | Предоставляет информацию о преобразовании значений даты и времени в строковые литералы и из них, а также в других форматах даты и времени. |
Запись международных операторов Transact-SQL | Содержит рекомендации по переносу баз данных и приложений баз данных, использующих операторы Transact-SQL с одного языка на другой или поддерживающих несколько языков. |
Скалярные функции ODBC (Transact-SQL) | Предоставляет информацию о скалярных функциях ODBC, доступных для использования в инструкциях Transact-SQL. Сюда входят функции даты и времени ODBC. |
В ЧАСОВОМ ПОЯСЕ (Transact-SQL) | Обеспечивает преобразование часового пояса. |
См. также
- Функции
- Типы данных (Transact-SQL)
Oracle TimesTen In-Memory Database
Сожалеем. Мы не смогли найти совпадение по вашему запросу.
Мы предлагаем вам попробовать следующее, чтобы найти то, что вы ищете:
- Проверьте правильность написания вашего ключевого слова.
- Используйте синонимы для введенного вами ключевого слова, например, попробуйте «приложение» вместо «программное обеспечение».
- Начать новый поиск.
Связаться с отделом продаж
Меню МенюTimesTen: самая быстрая база данных OLTP, сверхвысокая доступность, эластичная масштабируемость
Oracle TimesTen In-Memory Database — полнофункциональная реляционная база данных, оптимизированная для памяти, которая обеспечивает микросекундный отклик и чрезвычайно высокую пропускную способность для критически важных приложений в широком диапазоне отраслей.
Посмотреть обзорное видео (1:05)
Купить
Что нового в TimesTen
Подробности
Архитектура баз данных TimesTen In-Memory и семейства продуктов
База данных Oracle TimesTen In-Memory (TimesTen) обеспечивает производительность приложений в реальном времени (низкое время отклика и высокая пропускная способность) за счет изменения предположений о том, где находятся данные во время выполнения. За счет управления данными в памяти и соответствующей оптимизации структур данных и алгоритмов доступа операции с базами данных выполняются с максимальной эффективностью, что позволяет значительно повысить скорость отклика и пропускную способность. Благодаря внедрению TimesTen Scaleout, масштабируемой архитектуры без общего доступа, основанной на существующей технологии in-memory, TimesTen позволяет базам данных прозрачно масштабироваться между десятками хостов, достигать размеров сотен терабайт и поддерживать сотни миллионов транзакций в секунду без необходимость ручного сегментирования базы данных или разделения рабочей нагрузки. TimesTen можно развернуть тремя способами:
TimesTen Classic
Автономная база данных на одном узле для приложений, требующих минимального и стабильного времени отклика. Высокая доступность обеспечивается за счет парной репликации «активный-резервный». на другой узел, который также поддерживает несколько подписчиков только для чтения для масштабирования тяжелых рабочих нагрузок чтения. Приложения получают доступ к базам данных TimesTen, используя стандартные SQL и PL/SQL через интерфейсы программирования JDBC, ODBC, ODP.NET, Oracle Call Interface (OCI) и Pro*C/C++.
TimesTen Cache
Опция Oracle Database Enterprise Edition, идеально подходящая для кэширования критического для производительности подмножества базы данных Oracle на уровне приложений для сокращения времени отклика. Приложения выполняют операции чтения/записи в кэш-таблицах с использованием SQL и PL/SQL с автоматическим сохранением, согласованностью транзакций и синхронизацией данных с базой данных Oracle.