Адміністратори баз даних

Питання та відповіді для професіоналів баз даних, які бажають покращити свої навички роботи з базами даних та дізнатися від інших у спільноті

2
НЕ (a = 1 AND b = 1) vs (a <> 1 AND b <> 1)
У WHEREпункті запиту SQL я очікую, що ці дві умови мають однакову поведінку: NOT (a=1 AND b=1) проти a&lt;&gt;1 AND b&lt;&gt;1 Перша умова поводиться так, як очікувалося, і хоча я виконую другу умову, щоб зробити те саме, це не відбувається. Це дуже основні речі, але соромно я не бачу, що …
16 condition 

1
(x НЕ NULL) vs (NOT x IS NULL) у PostgreSQL
Чому x IS NOT NULLне дорівнює NOT x IS NULL? Цей код: CREATE TABLE bug_test ( id int, name text ); INSERT INTO bug_test VALUES (1, NULL); DO $$ DECLARE v_bug_test bug_test; BEGIN RAISE NOTICE '%: %', v_bug_test, (v_bug_test IS NULL); RAISE NOTICE '%: %', v_bug_test, (v_bug_test IS NOT NULL); …
16 postgresql  null 

2
СТВОРИТИ ТАБЛИЦЮ ТА ВИБІРТЕ ДО
Підтримка PostgreSQL CREATE TABLE ASі SELECT INTOколи я можу використовувати обоє? CREATE TABLE AS - визначити нову таблицю з результатів запиту CREATE TABLE ASстворює таблицю і заповнює її даними, обчисленими SELECTкомандою. У стовпцях таблиці є імена та типи даних, пов’язані з вихідними стовпцями SELECT(за винятком того, що ви можете замінити …
16 postgresql  ctas 

3
Обгортання запиту, якщо існує, це робить дуже повільним
У мене є наступний запит: select databasename from somedb.dbo.bigtable l where databasename ='someval' and source &lt;&gt;'kt' and not exists(select 1 from dbo.smalltable c where c.source=l.source) Наведений вище запит виконується за три секунди. Якщо вищезазначений запит повертає будь-яке значення, ми хочемо, щоб збережена процедура EXIT, тому я переписав її як нижче: …

2
Чи законно SQL Server заповнювати ПЕРСИСТИЧНІ стовпці даними, які не відповідають визначенню?
Я переглядаю це питання про дивні значення в PERSISTEDобчисленій колонці. Відповідь там дає кілька здогадок про те, як склалася така поведінка. Я запитую наступне: це не відверта помилка? Чи PERSISTEDдозволяється колись колонкам поводитись так? DECLARE @test TABLE ( Col1 INT, Contains2 AS CASE WHEN 2 IN (Col1) THEN 1 ELSE …

2
Нецілі міркування первинного ключа
Контекст Я розробляю базу даних (на PostgreSQL 9.6), яка буде зберігати дані з розподіленої програми. Через розповсюджений характер програми я не можу використовувати цілі числа автоматичного збільшення ( SERIAL) як основний ключ через потенційні перегони. Природним рішенням є використання UUID або глобально унікальний ідентифікатор. Postgres поставляється із вбудованим UUIDтипом , …

2
Рекурсивний CTE, щоб знайти Total для всіх дітей
Ось дерево складання, яке я хочу шукати за допомогою рекурсивного T-SQLзапиту (імовірно CTE) із очікуваними результатами нижче. Я хочу знати загальну суму за збірку за будь-яку частину. Значить, якщо я шукаю "Rivet", я хочу знати загальний підрахунок на кожному рівні в межах зборів, а не лише прямий підрахунок дітей. Assembly …

1
Чому додається стовпець NOT NULL з обмеженням за замовчуванням миттєвим?
CREATE TABLE TestTab (ID INT IDENTITY(1,1), st nvarchar(100)) INSERT INTO TestTab (st) values ('a') INSERT INTO TestTab (st) values ('b') INSERT INTO TestTab (st) values ('c') INSERT INTO TestTab (st) values ('d') INSERT INTO TestTab (st) values ('e') INSERT INTO TestTab (st) SELECT TOP 10000 st from testtab GO 30 …

1
Розробка бази даних для бізнес-домену для відеоігор із безліччю взаємозв'язків багато-до-багатьох
Я відносно новий в розробці баз даних, і я вирішив зробити власну гіпотетичну базу даних для практики. Однак у мене виникають проблеми з її моделюванням та нормалізацією, оскільки я вважаю, що існує чимало відносин "багато до багатьох" (M: N). Загальний опис сценарію База даних призначена для зберігання даних про різних …

1
Чому часовий пояс має такий божевільний зсув від UTC на рік 0001 в Постгресі?
У Postgres 9.5 я здивований, побачивши результат, показаний нижче, експериментуючи з роком 0001(немає нуля року 0000). Зсув -07:52:58? Деякі приклади коду. Зауважте, що я змішав використання, TIMESTAMP WITH TIME ZONEі TIMESTAMP WITHOUT TIME ZONEтому уважно читайте. SET TIME ZONE 'America/Los_Angeles' ; SELECT (TIMESTAMP WITH TIME ZONE '2015-01-01 00:00:00.0', TIMESTAMP WITH …

4
Зберігання маршрутів автобусів у базі даних
Я провів деякі дослідження і виявив, що я повинен зберігати маршрут як послідовність зупинок. Щось на зразок: Start -&gt; Stop A -&gt; Stop B -&gt; Stop C -&gt; End Я створив три таблиці: Маршрути Зупиняється RouteStops ... де RouteStops - перехідна таблиця. У мене є щось на кшталт: Маршрути +---------+ …

3
Вплив індексу на оператори оновлення, коли стовпець оновлення не знаходиться в індексі
Я постійно бачу, як люди кажуть, що індекси сповільнюються update, deleteі insert. Це використовується як вислів ковдри, як би абсолютне. Налаштовуючи свою базу даних для підвищення продуктивності, я постійно стикаюся з цією ситуацією, яка, здається, суперечить цьому правилу для мене, і ніде я не можу знайти когось сказати чи пояснити …

3
Попередження аварій у базі даних [закрито]
Закрито . Це питання має бути більш зосередженим . Наразі відповіді не приймаються. Хочете вдосконалити це питання? Оновіть питання, щоб воно зосередило увагу на одній проблемі, лише відредагувавши цю публікацію . Закрито 4 роки тому . Моя база даних перевищує 250 Гб. Я роблю заплановані резервні копії за допомогою стороннього …

3
Чому SQL Server ігнорує індекс?
У мене є таблиця CustPassMasterз 16 стовпцями в ній, одна з яких є CustNum varchar(8), і я створив індекс IX_dbo_CustPassMaster_CustNum. Коли я запускаю свою SELECTзаяву: SELECT * FROM dbo.CustPassMaster WHERE CustNum = '12345678' Він повністю ігнорує індекс. Це плутає мене, оскільки у мене є ще одна таблиця CustDataMasterз набагато більшими …

1
Викидання невикористаних індексів - Оцінка несподіваних небезпек
У нас дуже велика база даних із сотнями невикористаних індексів згідно зі статистикою DMV, які накопичуються з моменту останнього перезавантаження сервера в липні. Один з наших Асоціаторів довірених справ висловив такі застережливі заяви, які не мають для мене сенсу: Перш ніж ми скинемо індекс, ми повинні переконатися, чи він не …
16 sql-server  index 

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.