Size: a a a

2020 October 13

ДT

Дмитрий Texnix... in sql_ninja
Timus
да нифига никто не гуглит. и ты тоже.
🧐 я гуглю, ток плохо получается
источник

DI

Dmitriy Ivanov in sql_ninja
Дмитрий Texnix
🧐 я гуглю, ток плохо получается
источник

A

Artyomst in sql_ninja
всем, привет! с точки зрения теории нормализации БД к какой НФ относится исключение null значений во внешних ключах?
источник

IZ

Ilia Zviagin in sql_ninja
Artyomst
всем, привет! с точки зрения теории нормализации БД к какой НФ относится исключение null значений во внешних ключах?
В смысле исключение?
источник

IZ

Ilia Zviagin in sql_ninja
Artyomst
всем, привет! с точки зрения теории нормализации БД к какой НФ относится исключение null значений во внешних ключах?
Так, давай по порядку.
Внешние ключи тут вообще ни при чём, теория нормализации их не обсуждает.
Так что "исключение NULL во внешних ключах" значит просто "исключение NULL".

Так?
источник

A

Artyomst in sql_ninja
бывает, что в таблице есть FK на другую таблицу и на практике допускают, что значение FK может быть null из-за связи М к 0
источник

IZ

Ilia Zviagin in sql_ninja
Artyomst
всем, привет! с точки зрения теории нормализации БД к какой НФ относится исключение null значений во внешних ключах?
Если так, это -- первая НФ.
Значение в таблице должно быть атомарным. NULL - это нарушение этой атомарности.
Но на практике это не важно.
источник

A

Artyomst in sql_ninja
ага
источник

IZ

Ilia Zviagin in sql_ninja
Потому что иначе надо декомпозировать по каждому набору атрибутов , который независимо может быть NULL ...
Что тяжко.
источник

A

Artyomst in sql_ninja
встречаются решения в БД, где в таблице есть два FK на взаимоисключающие таблицы. То есть в каждой строка одно из двух FK - всегда null. Насколько я понимаю, это ошибка в одной из форм нормализации
источник

IZ

Ilia Zviagin in sql_ninja
Artyomst
встречаются решения в БД, где в таблице есть два FK на взаимоисключающие таблицы. То есть в каждой строка одно из двух FK - всегда null. Насколько я понимаю, это ошибка в одной из форм нормализации
нет
источник

IZ

Ilia Zviagin in sql_ninja
Artyomst
встречаются решения в БД, где в таблице есть два FK на взаимоисключающие таблицы. То есть в каждой строка одно из двух FK - всегда null. Насколько я понимаю, это ошибка в одной из форм нормализации
Нормализация -- это про функциональную зависимость. NULL -- это не значение, оно не зависит ни от чего.
источник

IZ

Ilia Zviagin in sql_ninja
Artyomst
встречаются решения в БД, где в таблице есть два FK на взаимоисключающие таблицы. То есть в каждой строка одно из двух FK - всегда null. Насколько я понимаю, это ошибка в одной из форм нормализации
Ещё раз, что поля FK -- теорию нормализации это не метёт ни разу, там внешние ключи не рассматриваются и не влияют ни на что.
источник

IZ

Ilia Zviagin in sql_ninja
Artyomst
встречаются решения в БД, где в таблице есть два FK на взаимоисключающие таблицы. То есть в каждой строка одно из двух FK - всегда null. Насколько я понимаю, это ошибка в одной из форм нормализации
А оба они not null могут быть? Или наоборот NULL ?
источник

A

Artyomst in sql_ninja
не могут
источник

IZ

Ilia Zviagin in sql_ninja
Ну да, понимаю, тут как бы такой душок есть, что атрибуты друг от друга зависят слегка...
Хотя должны зависеть от PK только
источник
2020 October 14

LK

Lyubov K. in sql_ninja
Добрый день! Подскажите есть две таблицы в разных базах, в одной номера телефонов в формате (tab1) 79030000000 в другой (tab2) 9030000000

Как их можно соединить?


На выходе нужна таблица tab1 и к ней left join tab2


Спасибо
источник

T

Timus in sql_ninja
Lyubov K.
Добрый день! Подскажите есть две таблицы в разных базах, в одной номера телефонов в формате (tab1) 79030000000 в другой (tab2) 9030000000

Как их можно соединить?


На выходе нужна таблица tab1 и к ней left join tab2


Спасибо
и в чем проблема?
источник

T

Timus in sql_ninja
если форматы всех записей одинаковые в таблице, то можно просто сделать '7' + Phone и будет формат как в другой таблице
источник

LK

Lyubov K. in sql_ninja
Timus
и в чем проблема?
Не знаю как формат обойти 7 спереди убрать

Я недавно с sql, так что прошу прощения, за дилетантский вопрос
источник