[Ответить в тред] Ответить в тред



<<
Назад | Вниз | Каталог | Обновить тред | Автообновление
317 | 38 | 162

И снова это неиндексированный баз данных тред! /sql/ Аноним 04/07/18 Срд 12:52:17  1222346  
15226971276311.png (107Кб, 836x673)
15226971276300.png (163Кб, 512x512)
15226971276322.png (355Кб, 1600x1247)
И снова это неиндексированный баз данных тред!
Тут мы решаем ультраважные вопросы о том, как правильно хранить динамические атрибуты сущностей: в полях или в строках,
Рассказываем, как работаем аналитиками и мечтаем стать разработчиками,
Строим АНАЛИТИЧЕСКИЕ отчеты в экселе, выгружая по миллиону строк, а потом фильтруя,
Дружно не понимаем, ЗОЧЕМ ЖИ НУЖИН ОЛАП, ЕСЛИ И ТАК ВСЕ РАБОТАЕТ ЗАЕБИСЯ,
Ищем ошибки в аббривиатурах MDX DMX XMLA,
Доебываемся до эс - ку - элей наших же потенциальных конкурентов
>Select id from tbl_table_with_id where id = (select max(id) from tbl_table_with_id)
>ЧТО НЕ ТАК-ТО У МЕНЯ?
Удивляемся, как за знания, приобретаемые за 4 месяца на sql-ex, могут платить по 100к, и бугуртим, что ниасилили и 100к не получаем.
А так же:
Постгре или постгрес?
Май эс ку эль или мускуль?
Эс ку эль или сиквел?

В общем, это очередной баз данных тред, поехали!

Награда светит не посмертною медалью, отнюдь
Это храм старого формата, так предали огню
И скоптили небо старики, что слышны с Невской реки
Мы видим дым от костра - "Да здравствуют базовики!"

ПРЕДЫДУЩИЙ: >>1167018 (OP)

#sql #бд #базы данных
Аноним 04/07/18 Срд 12:54:54  1222349
>>1222346 (OP)
Сразу вопрос. Каким образом можно удалить знаки препинания из строки?
Есть ли что-то похожее?
SELECT функция(атрибут, знак препинания)
FROM таблица
Аноним 04/07/18 Срд 12:55:55  1222350
>>1222349
СУБД oracle
Аноним 04/07/18 Срд 13:14:18  1222364
>>1222349
Replace (stroka, ',')
Аноним 05/07/18 Чтв 21:33:52  1223234
sudo apt-get install mysql-server
он устанавливает, но не просит пароль, и я не могу войти под root. что не так?
Аноним 06/07/18 Птн 11:17:15  1223475
>>1223234
У тебя полномочия администратора может быть?
Как я помню там не из под рута, а из под ассоциативного пользователя необходимо заходить или из под mysql
Аноним 06/07/18 Птн 11:32:37  1223486
>>1223234
>он устанавливает, но не просит пароль, и я не могу войти под root. что не так?

sudo service mysql stop

sudo mysqld --skip-grant-tables --user=root

mysql -u root

и меняешь пароль.
Аноним 07/07/18 Суб 00:44:18  1223922
Безымянный.png (203Кб, 1280x1024)
Анон можешь дать пару советов и гайдов как вкатиться в sql?
Из скилов только знания уровня дауна С++ типа решения не сложных задач, которые были получены 10 лет назад и успешно забыты.
А сейчас короч мне нужно сделать базу данных для стоматологии похожую на оп пик, это реально ? скок времени это может занять?
Аноним 07/07/18 Суб 00:53:13  1223927
>>1223922
>Анон можешь дать пару советов
Alan_Beaulieu-Learning_SQL-EN.pdf
Learning PostgreSQL by Salahaldin Juba.pdf
sql-ex.ru

>дауна С++
При чем тут это? Тебе сказали БД сделать или прямо все приложение с кнопочками и свистоперделками на пике?

>скок времени это может занять?
Это от тебя зависит

>Word не был активирован
лол

Откуда вообще тебе дали это задание и почему? забрал пик себе, тоже сделаю, для самопрактики
Аноним 07/07/18 Суб 18:33:24  1224173
>>1223927
спасибо анон
> с кнопочками и свистоперделками на пике
было бы то что надо
>Откуда вообще тебе дали это
дали по работе, подробностей пока нету тк сам их не знаю надо звонить
Аноним 08/07/18 Вск 00:34:22  1224316
image.png (82Кб, 1132x390)
О чем они? Я про последнее предложение. Почему 4 бэкслэша? При single quote это был бы один слэш, т.к. их не надо эскейпить вообще, при E'yoba' пришлось бы написать 2 слэша, т.к. в Е строках \ значит начало escape sequence. Но откуда 4 то блять. В обычной 'строке' ? Это документация постгреса если че
Аноним 08/07/18 Вск 17:39:49  1224594
download.png (4Кб, 238x212)
Внимание, господа бездельники и позеры, есть всем известное хранилилище редис и для чего его только не используют из-за его производительности.

Собственно, у меня как раз таки проблема с его производительностью скорее не его как хранилища, а его сетевой подсистемы, есть такая необходимость, читать и писать в него в много потоков с разных инстансов, а так как спроектирован он как однопоточное приложение, о конкурентном доступе можно забыть.

Соответственно, вопрос к господам знатокам, а если ли концепиуально похожее, легковестное in-memory хранилище не имееющее такого врожденного недостатка, как блокировка всего сервиса, пока выполняется один запрос?
Аноним 08/07/18 Вск 17:46:51  1224603
>>1223922
имея нормальные требования - проектирование бд где-нить день, лучше два, реализация бизнес логики, гуйни на веб технологиях html+js+css python/go/php неделя-две в плюсах и десктопных технологиях у меня нет компетенций для оценки сроков.

Но, так как нормальных требований не будет да и меняться они будут по сто раз на дню, то от полугода до бесконечности.
Аноним 08/07/18 Вск 17:49:51  1224604
>>1224594
tarantool?
Аноним 08/07/18 Вск 17:51:44  1224609
>>1224604
Александр?
Аноним 08/07/18 Вск 17:53:27  1224612
>>1224604
>tarantool
оно может быть и подойдет, но не хотелось бы держать такого монстра в проде только ради по сути большой хеш-таблицы (опционально распределенной).
Аноним 08/07/18 Вск 18:43:43  1224650
>>1224612
смотрю пока на reindexer и кажется, что лучше ничего не найду
Аноним 09/07/18 Пнд 15:46:40  1225074
Сап, бигдаты. Я JS макака, вкатываюсь в бэкенд на node.js ага, я еще питон знаю - но это позже, да и не суть
Хочу освоить SQL.
Скажите с чего начать совсем нубарю? Какой учебник? Какая СУБД?
Как мне облегчить жизнь и обучение себе? GUI какое юзать?
Я вообще лошара в БД.
Аноним 09/07/18 Пнд 19:01:39  1225170
>>1225074
POSTGRESQL
O
S
T
G
R
E
S
Q
L
Аноним 09/07/18 Пнд 19:46:20  1225182
>>1225074
Иди скачай книжку ицыка бен-ган, основы T-SQL.
Накати MS SQL, если нужно, напиши сюда, я скину тебе скрипт учебной базы лучше сам на торренте найди. После того как прочтёшь главу о подзапросах, пиздуй выполнять упражнения на сайте sql-exe. Дальше сам разберёшься.
Если тебе нужна реляционная теория больше чем просто одна глава, то читай Дейта.
Аноним 11/07/18 Срд 08:40:04  1225960
>>1222346 (OP)
Рейт https://pastebin.com/rC3RAGTJ
мимо-бэкенд-крокодил
С меня сотни кросс-таблиц
Аноним 13/07/18 Птн 16:17:40  1227327
>>1225960
>https://pastebin.com/rC3RAGTJ

>TABLE "thread"
>TABLE "thread_post"
>TABLE "post_answer"
что-то тут лишнее

>TABLE "user"
>TABLE "user_role"
- Регистрацию вводишь?

>TABLE "attachment"
>TABLE "post_attachment"
Зочем тут 2 таблицы? У тебя аттачменты всегда уникальные. Или ты собираешься проверять на уникальность при загрузке?
Аноним 13/07/18 Птн 17:13:18  1227352
xjTZhCdS.png (255Кб, 512x512)
Посоветуйте годные видеоуроки mysql на ютупе желательно где больше практики показано.
Аноним 14/07/18 Суб 23:43:06  1228399
работаю десять лет в DWH/ETL
спрашивайте ответы
Аноним 15/07/18 Вск 10:28:35  1228513
>>1228399
тоже хочу работать, какой минимум нужен для работы ?
Аноним 15/07/18 Вск 11:43:56  1228530
>>1227352
> видеоуроки mysql
Что за хуйня такая?
> больше практики
https://www.google.com/search?q=sql+cookbook
Аноним 15/07/18 Вск 13:59:40  1228614
>>1228399
В какой сфере работаешь? Какая зп?
Аноним 15/07/18 Вск 14:08:03  1228618
>>1228399
Пиздунок итт
Аноним 15/07/18 Вск 21:06:05  1228862
>>1228513
минимум - это хорошо знать SQL и уже можно начинать вкатываться.

если не знаешь БД вообще, то читать какие-нибудь основы (дейт или чо там) дрочить sql-exe.ru. Скачать какую-нибудь Oracle(лучше), MS SQL. Почитать их документацию, потыкаться в них. Знать какие индексы есть нахуа они нужны. (хотя они зачастую в DWH не нужны, но долбоебы любят спрашивать). Чем OLTP база отличается от аналитической. Про етль можно почитать в data warehouse etl tookit кимбалла. Но лучше это делать с практикой, просто так туго будет заходить.

Проще всего, если в Рахе, то с одним SQL вкатиться в интегратор. Они набирают на эту тему пиздюков толпами. И потом уже на работе читать ньюансы, хоть понятно о чем будет речь.

Если погромист в душе, то лучше вкатываться в жабу. Там больше бабла и разнообразия.
Аноним 15/07/18 Вск 21:17:31  1228872
>>1228614
делаю в телекомах и банках. Разный оракел/ексадату/терадату и прочий mpp задорого. Просто быдлокодер. Получаю оклад 165к и если с премией через год, то средне в месяц будет 210+.

Но такие зп у обычных ETL почти не бывают. Не стоит обольщаться. Больше 200 это уже у архитекторов, погоняльщиков рабов, РП-шек. Можно полуперекатиться в банке на полубизнес - отчетность, фрод, розничная аналитика, риски. Сидеть по сути клепать те же отчеты, только со знанием прикладной области, называться типа директор направления и получать до 250к. Ну это если более менее софт скилы есть.

В целом работа не матан. Местами примитивная. Хотя есть места, где на экспертизе можно выезжать из толпы. Если сыч и чисто технарь, лучше вкатываться в general purpose языки. Там больше бабла и веселей.
Аноним 15/07/18 Вск 23:21:35  1228963
>>1228872
Какой лвл? Банковскую сферу долго осваивал? Видишь какие-нибудь перспективы?
Аноним 15/07/18 Вск 23:53:15  1228970
>>1228963
35. Когда работаешь с двх так или иначе осваиваешь. Кто-то быстрее, кто-то нихуя.

Управлять рабами никогда не стремился. Если по тех стязе смотреть, можно стать арихтектором. Я им был некоторое время. Но он в банках в основном занимается тем, что долго хуесосится на митингах с дебилами, доказывая очевидные вещи. Пишет в ворд, рисует в визио и поверпейнт. зп 250-300к может быть. (столько может жаба кодер получать). Вакансий мало очень.

планы заниматься тем же за 200к. (основной план)

либо перекат в мл
либо перекат в жабу (если схуято уволят, что очень маловероятно)
либо перекат в гермашку
Аноним 16/07/18 Пнд 00:23:55  1228978
>>1228970
Тянок много было?

Аноним 16/07/18 Пнд 00:43:08  1228980
>>1228978
только трапы
Аноним 16/07/18 Пнд 20:46:51  1229418
2KYwvbxVJlQ.jpg (166Кб, 810x1080)
sql sql slq slq slq slq slq slq slq slq
Мэри Поппинс 17/07/18 Втр 00:52:04  1229582
grafik.png (13Кб, 1152x648)
Привет!
помогите пожалуйста!

я хочу создать базу данных для сенсорных данных и классификаторов на них.

я создала entity сенсорные данные и entity классификатор, они соединены relationship "использует", n:m.
У сенсорных данных свои свойства, а у классификатора есть ещё свойство "тренировочные данные", где я планирую сохранять список id использованных сенсорных данных. Как 'то пометить? И я правильно всё сделала?
Аноним 17/07/18 Втр 01:06:18  1229587
>>1229582
>Использует
Лол
Аноним 17/07/18 Втр 01:12:22  1229592
>>1229582
Только что написал тебе развёрнутый ответ, а потом увидел "сделала".
Скинешь сиськи?
Аноним 17/07/18 Втр 01:17:18  1229594
>>1229592
только что сфоткалась красиво, а потом увидела, что ты анон с двача и.. напишешь как надо рисовать ер модель?
Аноним 17/07/18 Втр 19:57:57  1230066
15237832776340.jpg (53Кб, 604x603)
Перешёл на новое место работы как data ANALyst. Сразу же посадили хуярить репортинг (используется mysql + excel, больше нихуя). И тут стало известно что будут имплементировать Zeppelin (т.к. просто и бесплатный). Установил дома на локалку, почитал документацию, остались такие вопросы:
Насколько эта приблуда перспективна в плане отчётности и аналитики на уровне "мы вчера всё проебали\заработали"?
Аноним 18/07/18 Срд 01:32:59  1230216
>>1230066
судя по стэку вы вчера заработали нихуя
надо работать там, где в репортинге используется ПО задорого. Там и бабла больше платят.
Аноним 18/07/18 Срд 10:22:00  1230289
>>1230216
Это не отменяет самого вопроса.
Аноним 21/07/18 Суб 01:19:39  1232098
>>1228399
Где успел поработать? Где больше всего платят?
Аноним 21/07/18 Суб 03:17:54  1232114
посоветуйте книгу по mysql чтоб через 4 дня на интервьюшке не обосраться, плиз
Аноним 21/07/18 Суб 03:19:21  1232115
>>1232114
Вот да очень интересует, что за 4 дня выучить, чтобы на интервью казаться неказуалом
Аноним 21/07/18 Суб 04:58:31  1232125
>>1232098
делал хд в 4 банках из топ 5 кроме колхоза, в двух телекомах. работал в 2х интеграторах, в штате 2х банков и в телекоме. Больше платят в сбере сейчас.
Аноним 23/07/18 Пнд 12:01:30  1233459
Что хорошего посоветуете для вката в SQL
Аноним 23/07/18 Пнд 22:06:49  1233768
>>1225182
>>1233459
Аноним 25/07/18 Срд 10:28:22  1234559
Хочу, по заветам пасты, написать свою борду.
Насколько для каждого раздела обоснованно создавать свою таблицу? Вроде это и поиск ускорит, и еблю с айдишниками постов снизит значительно (для каждого раздела свой счетчик номера поста).
Или лучше сделать составной первичный ключ из раздел+номер_поста?
Аноним 25/07/18 Срд 13:43:56  1234657
>>1234559
Ето платиновый вопрос плоские таблицы vs таблицы со связями.
Коли хочеш изучять SQL -- выбирай второе.
Аноним 26/07/18 Чтв 00:33:02  1235091
Няши, поясните, а то сам не могу выбрать. Использую postgresql. Есть два стула:
1)Разбить все данные по схемам, в которых будет много-много небольших таблиц
2)Использовать одну схему, а данные разбить по таблицам, соответственно их будет не так много (несколько сотен), но они будут ОЧЕ большими - десятки (а то и сотни) тысяч строк.
Что лучше?
Аноним 26/07/18 Чтв 00:57:33  1235107
>>1234559
> Насколько для каждого раздела обоснованно создавать свою таблицу?
Отвратительно. Разделы с точки зрения постов абсолютно одинаковые.

Таблица Board. В ней все разделы. К каждому разделу цепляются правила раздела типа размера картинок и прочей дрисни что надо. Также к каждому разделу делается сиквенс чтобы новые посты их дергали.
К Board один ко многим таблица Post. В ней суррогатный PK и номер поста в борде и FK к разделу. Это позволит делать нормальные ссылки на посты на других бордах без писек.

Кто не согласен, того обоссу.
Аноним 26/07/18 Чтв 01:01:04  1235108
>>1235091
Можешь юзать разные схемы если у тебя разные приложухи и реально они не пересекаются. Если приложуха одна, то не еби мозг и делай одну схему с нормальными таблицами и нормализацией.
> они будут ОЧЕ большими - десятки (а то и сотни) тысяч строк
Это вообще не размер. Просто вообще.
Шардирование для больших таблиц с идемпотентной аффинити-функцией от ключа если дорастешь до миллионов и миллионов, а на оракл денег не дают. Про бигдату же узнаешь если дорастешь.
Аноним 26/07/18 Чтв 01:33:55  1235118
>>1235108
> Это вообще не размер. Просто вообще.
Для какой-нибудь компании - вполне возможно, а у меня приложение для личного пользования. И когда я вижу что постгрес жрет 90% проца и 6 гб рамы, мне становится печально.
Но спасибо, не стал запариваться со схемами.
Аноним 26/07/18 Чтв 01:52:07  1235122
>>1235118
> 6 гб рамы
У каждого второго браузер жрет больше.
> постгрес жрет 90% проца
Что у тебя жрет 90% проца? Селекты? Нехуй фуллсканы по неиндексированным колонкам делать. Исправь и будет нормально работать.
Аноним 26/07/18 Чтв 02:12:58  1235127
Screen Shot 201[...].png (15Кб, 1112x96)
>>1235122
> У каждого второго браузер жрет больше.
Ну так то на рабочем компе, где меньше 16 гигов по определению не бывает. А на домашний сервак, где и крутится дб, пришлось докупить еще 8 гб, а то он в своп уходил сразу же.
> Нехуй фуллсканы по неиндексированным колонкам делать.
В каком плане "неиндексированным"?
У меня колонки как на пике, и когда я делаю самый обычный запрос типа
"SELECT board, url, tag, notInteresting, dead FROM interesting_threads WHERE url = '"+num+"' AND board = '"+board+"';" хотя бы раз в секунду, начинаются просадки. Я конечно понимаю, что проблема еще и в том, что там стоит пень с 2 ядрами, но не на столько же все плохо должно быть.
Аноним 26/07/18 Чтв 09:54:37  1235208
>>1235127
> В каком плане "неиндексированным"?
В чем у тебя проблема я написал и слова для гуглинга тоже написал. Пиздуй гуглить и тогда решить свою проблему или иди нахуй и страдай.
Аноним 26/07/18 Чтв 10:44:41  1235242
>>1235208
Мать твою ебал.
Аноним 26/07/18 Чтв 10:46:09  1235243
>>1235242
Кекнул с дурачка.
мимокрокодил
Аноним 26/07/18 Чтв 10:48:28  1235245
.jpg (8Кб, 480x360)
>>1235242
Свинья неблагодарная.
Аноним 26/07/18 Чтв 10:52:15  1235251
>>1235243
>>1235245
Зарепортил шитпостинг.
Аноним 26/07/18 Чтв 10:55:36  1235255
>>1235251
Не забудь поставить минус в карму, долбоеб. Как можно использовать бд, но не знать про индексы? Уму блять непостижимо.
Аноним 26/07/18 Чтв 10:59:18  1235257
.png (17Кб, 200x188)
>>1235251
А за щеку-то хоть зарепортил, порванка?
Аноним 26/07/18 Чтв 11:39:46  1235279
>>1235255
>>1235257
Бан.
Аноним 26/07/18 Чтв 15:38:14  1235442
>>1235279
Помог анонам выше забанить твою мать.
Аноним 29/07/18 Вск 18:44:20  1237333
165151646146.jpg (402Кб, 1280x1024)
6PIVewY8Aa4.jpg (145Кб, 1034x466)
G48emKvJ23Q.jpg (109Кб, 1140x369)
Анон нид хелп, это почти правильный код, где ошибки точно не знаю.он типа выдает результаты, но где то с нулами. Скажите на пальцах как это понимать и где можно посмотреть информацию по таким сложным техническим запросам или какие главы учебника почитать чтобы это понять и какого учебника?
я проходил только лоу уровень где связь только 2 таблиц джоинами, а тут их много и еще вложенные селекты ...
Это типа надо сделать отчеты для врачей по времени и по определенным случаем лечения, фотка задания на третьем пике. вторая это почти тоже задание только меньше столбцов и лучше видно таблицу сверху.
Аноним 29/07/18 Вск 18:51:44  1237337
>>1237333
Еще часть однотипных темповых таблиц по середине я удалил чтобы помещалось на скрине
быстрофикс
Аноним 29/07/18 Вск 20:53:00  1237407
>>1222346 (OP)
Аноны, работал кто-нибудь с монго дб?
У меныя тут запрос, который делает много lookup'ов, сторонних коллекций в основную. К сожалению пока я их не могу убрать, так что ищу советов по по оптимизации. К счастью все эти лукапы не зависят друг от друга и могли бы выполняться параллельно. Я перепробовал несколько решений, пока единственное работающее было - через $facet, но оно оказалось в 2 раза медленнее обычной последовательности лукапов. Может кто помочь?
Аноним 29/07/18 Вск 20:57:41  1237409
>>1237407
> У меныя тут запрос, который делает много lookup'ов, сторонних коллекций в основную.
Ничего личного, но еще один пример когда ужа натягивают на ежа реляционные по природе данные натягивают в нереляционщину.
Аноним 29/07/18 Вск 21:07:02  1237411
>>1237409
Сам знаю, но от осознания этого факта ничего не меняется. Изменение схемы данных займет слишком много времени и это никто не одобрит (да и насколько я вижу - это не особо возможно). ТАк что пока работаем с тем что есть.
Аноним 30/07/18 Пнд 00:39:53  1237514
>>1237333
>сложным техническим запросам
В каком месте они сложные?
Аноним 30/07/18 Пнд 08:04:11  1237545
>>1237514
для меня сложные, я 5 дней сикуэль изучаю. анон помоги плс, скажи где ошибки ?
хм может использовать Coalesce, чтобы не считал пустые значение, это поможет ?
Аноним 30/07/18 Пнд 09:35:40  1237569
Сап, анончики. Знаю, платина нахуя нужен apply? Чтоб понятнее, сколько гуглил - ниасилил.

мимо веб макака и не тяну SQL дальше оконных функций
Аноним 30/07/18 Пнд 15:25:56  1237719
Платиновый вопрос: кого можно называть разработчиком SQL, а кого аналитиком?

Я вот вообще просто работаю СПЕЦИАЛИСТОМ в банке. Но по факту строю витрины данных, пилю скрипты на PL для правильного переноса из одной системы в другую, иногда заливаю данные с помощью sqlldr, разрабатываю функции всякий парсинг, pipeline, пилю мониторинг систем рассылки там на почту при пиздецоме, пару раз проектировал всякую ебанину для новых проектов в БД. Ну и конечно сопровождаю все что написал. Работаю на оракле. И кто я? Разраб или аналитик все таки?

И сколько получают в среднем в ДС разрабы SQL? На hh забанили, хочу услышать мнение анонов
Аноним 30/07/18 Пнд 20:19:11  1237837
Бамп
Аноним 31/07/18 Втр 00:22:15  1238030
С каким минимумом можно найти работу в дс2?
Аноним # OP  31/07/18 Втр 00:43:17  1238049
>>1237569
>>1237719
>>1237837
>>1238030
Съебись с треда, пожалуйста.
Аноним 31/07/18 Втр 08:48:02  1238126
15233106766770.jpg (160Кб, 750x1000)
>>1238030
Получи сертификат на sql-ex.сру и можешь вкатываться
Аноним 31/07/18 Втр 10:25:54  1238154
>>1238049
Или что?
Аноним 01/08/18 Срд 18:55:07  1239072
Двощик, выручай! Есть постгрес установленный в сраный шиндоус. Тут вы меня захотите закидать тряпками, но это не я так хочу, юзер моего говнософта не сможет в линакс. Короче, я запустил инсталер, несколько раз нажал далее, инсталер сам создал юзера postgres, мой козырный пароль 1234, добавил в PATH каталог с бинарями C:\Program Files\PostgreSQL\10\bin. Теперь мне надо запилить тестовую базу данных шоб оттестировать работу на шинде, а она нихуя не создается. Двощик, помогай-выручай, что я делаю не так?
Аноним 01/08/18 Срд 20:05:47  1239111
>>1239072
>что я делаю не так?
прова админа?
Аноним 03/08/18 Птн 11:27:44  1240098
>>1223234
mysql_secure_installation
Аноним 03/08/18 Птн 11:36:55  1240103
>>1239072
> юзер моего говнософта не сможет в линакс
А ты не умеешь в виндас. Кто из вас хуже, как ты думаешь?
Аноним 03/08/18 Птн 21:03:38  1240444
Прив. Я совсем нуб, вкатываюсь фронта JS.
Развернул Microsoft SQL server, поставил SQL Server Management Studio.
Кое как прицепил к ней какую то учебную базу. И нихуя не понял.
Что куда и откуда.
НА этапе установки базы я задал (а точнее дефолтное оставил ) некоторое имя: MSSQLSERVER.
И где его юзать?
Когда запускаю SSMS - появляется окошко "Соединение с сервером" - и там ток из вариантов имя моей учетки компа. Короче пустой сервер.
Потом я подгрузил туда учебную базувыполнил скрипт ф5 нажал, лол и у меня во вкладке "Базы данных" появилась новая БД.
Я не оч понимаю менеджмент баз. У меня один сервер называющийся по моей учетке, да? В него я могу подгрузить самые разные БД, и все они отобразятся в вкладке "Базы данных"? И все они независимы будут?

Аноним 04/08/18 Суб 08:47:03  1240625
>>1240444
Такс, с тем что я выше написал - я разобрался. Сижу, пишу первые запросики.
Аноним 04/08/18 Суб 15:41:24  1240779
Поясните за HDF5 и за перспективу замены баз данных ей
Аноним 04/08/18 Суб 18:10:35  1240842
>>1240625
Ставь linux/mac nvm yarn и все остальное. А то ты не релевантный опыт получаешь
Аноним 04/08/18 Суб 18:17:00  1240851
>>1240625
Держи нас в курсе, аноним.
Аноним 05/08/18 Вск 12:30:40  1241169
Всем привет.
Какие вопросы по mysql вы можете задать, чтобы отличить сеньора от не-сеньора?
Я пока придумал три.
1) В чём отличие движков разных БД? InnoDB vs Mysql (trollface), Mysql vs MariaDB и причём тут Postgres? В чём отличия каждого из них при репликации?
2) Как устроен внутри поисковый индекс? Как он работает? Как это связано с составными ключами?
3) Есть колонка в таблице, в ней численные значения (1,5,6,10,xxx). Написать запрос, который выведет отсутствующие промежутки (1-5,6-10).
Аноним 05/08/18 Вск 20:21:35  1241526
>>1240842
Да бля, я тут с SELECT WHERE ковыряюсь. Большего пока не нужно. На работке есть большая база на 5 млн. лиц. Моя работа прямо связана с работой в этой базе, и прогой что ею управляет. В перспективе я должен овладеть мастерством SQL, но жопу никто не жжет, поэтому вкатываюсь равномерно.
Лучше скажи - у меня на nodejs сайт есть, учебный. Хочу к нему прикрутить базу. MS SQL Server чет монструозно для этих целей выглядит. ЧТо легкое юзать?
Аноним 06/08/18 Пнд 12:35:57  1241851
>>1229582
Нахуй тебе в это вкатываться? У тебя есть писька, просто найди себе по богаче кого-нибудь и заделай личинок.
Аноним 06/08/18 Пнд 13:22:09  1241870
Ща найс трольну тред ИТТ.

ORM
Аноним 06/08/18 Пнд 14:09:48  1241900
>>1229582
There are No Girls on the Internet

>>1241851
Предполагаю, что чтобы найти кого-нибудь побогаче писка у него должна быть сильно побольше.
Аноним 06/08/18 Пнд 16:52:27  1241966
гайз, хелпа нужна. Есть допустим запрос.
select
from table
where 1=1
and field in (value1, value2, value3)
;

Можно ли как-нибудь заебенить:
set @variable = (value1, value2, value3);
select
from table
where 1=1
and field in @variable
;

????
Аноним 06/08/18 Пнд 17:59:09  1242042
>>1241870
Это в пхп тред.
Аноним 08/08/18 Срд 10:29:29  1242851
Анон, как в PostgreSQL замутить следующее:
Есть article и article_tag.
Есть поисковик статей по тэгам.
Нужен запрос, чтобы найти статьи, у которых присутствуют все выбранные тэги.

Например:
article1 имеет tag1, tag2, tag3
article2 имеет tag1, tag2
в поисковике выбраны tag1, tag3

через оператора IN найдется и 1 и 2 статья, но у второй нет tag3, ее надо исключить.

вопрос: какой оператор нужен в условии?
Аноним 08/08/18 Срд 12:09:49  1242898
Снимок.PNG (27Кб, 1574x440)
>>1242851
Аноним 08/08/18 Срд 12:20:29  1242906
Снимок.PNG (52Кб, 1735x833)
>>1242898
slow fix
>>1242851
Аноним 08/08/18 Срд 12:33:01  1242919
Снимок.PNG (35Кб, 740x710)
>>1242906
А можно еще вот так, кажется, что так по-проще.
Аноним 08/08/18 Срд 12:49:21  1242924
>>1241526
Постгрес накати. Лучше мускула, хуже промышленных гигантов типа оракла и мс, но быстрее в развертывании.
Аноним 08/08/18 Срд 12:50:09  1242926
Сколько обычно платят ETL/DWH в ДС?
Аноним 08/08/18 Срд 13:10:57  1242945
>>1242926
7,5 дошиков и стакан урины чтобо ополоснуть ебало
Аноним 08/08/18 Срд 13:31:01  1242976
>>1242926
100-180к
Аноним 08/08/18 Срд 13:43:13  1242989
>>1242919
спасибо! ключевое условие - подсчет приджойненых тэгов - помог.
Аноним 09/08/18 Чтв 16:55:38  1243644
15246570569851.jpg (186Кб, 720x1280)
Как вкатиться в БД и написать свою собственную?
Аноним 09/08/18 Чтв 17:02:50  1243647
>>1243644
зачем?
Аноним 09/08/18 Чтв 17:21:08  1243654
>>1243647
Он просто шизик, не обращай внимания.
Аноним 09/08/18 Чтв 17:57:09  1243669
>>1243654
ты просто пидор, я не обращаю внимания
Аноним 09/08/18 Чтв 17:57:27  1243670
>>1243647
зачем вопрос на вопрос отвечать?
Аноним 09/08/18 Чтв 18:02:52  1243677
>>1243644
бамп, "зачем?" - это не ответ на вопрос.

Просто хочу, надо вообще, показать куну, какой я крутой итд. Нужное сами выбирите.
Аноним 09/08/18 Чтв 18:14:08  1243686
>>1243677
>>1243643

Он либо шизик, либо жирный тролль.
Аноним 09/08/18 Чтв 18:32:20  1243698
>>1243686
я шизик-жирный-тролль.
Аноним 10/08/18 Птн 03:08:07  1243931
Народ, какая БД используется в Вики-движке?
Аноним 10/08/18 Птн 07:20:00  1243957
>>1243931
mariadb/postgres
Аноним 10/08/18 Птн 07:22:31  1243958
>>1243957
Но можно и без движка?
Аноним 10/08/18 Птн 07:22:59  1243959
>>1243958
ёп, без БД имел ввиду
Аноним 10/08/18 Птн 07:23:43  1243960
>>1243958
>>1243959

Вряд ли.
Аноним 10/08/18 Птн 09:28:27  1244000
>>1243670
затем, что если бы ты имел хоть малейшее представление о базах данных и о том как они устроены, ты бы не задавал этот дебильный вопрос.
Аноним 10/08/18 Птн 10:08:50  1244020
>>1230066
>Zeppelin
Хуета хует так то. Накати хотя бы Tableau, спирать ее, думаю в твоей шараге похуй на это
Аноним 10/08/18 Птн 12:22:25  1244107
>>1242851
table(article_id, article_tag)

select article_id
from table
where article_tag in ("tag1", ..., "tagN")
group by article_id
having count(*) = N
Аноним 10/08/18 Птн 17:14:20  1244342
>>1244020
https://www.youtube.com/watch?v=4GELtgLNseM
Аноним 10/08/18 Птн 17:50:35  1244352
Что почитать по графовым БД?
Аноним 11/08/18 Суб 09:09:52  1244609
Бля а где у вас шапка? С чего начать-то?
Собираюсь "для портфолио" подучить базы и лучшим вариантом будет PostgreSQL. С какой литературы начать?
Аноним 11/08/18 Суб 15:44:41  1244893
15271342455562.jpg (59Кб, 600x600)
>>1244609
по литературе ап. тоже любопытны советы что почитать в начале
Аноним 11/08/18 Суб 23:18:20  1245178
>>1244893

Давайте. Раз уж зашёл такой кутёж, то поделюсь тем, что я читал и советую всегда.

Мат.часть:
Гарсиа-Молина Г., Ульман Дж. Д., Уидом Дж.-Системы баз данных. Полный курс
есть книга "Проектированные Объектно-Ориентированных баз данных"

Oracle
Книги Тома Кайта ( есть книги для совсем новичков, есть книги про тонкости)

Gupta S. - Oracle Advanced PL SQL Developer Professional Guide

Хочешь обмазаться Oracle по полной и не замараться в говне и своих ошибках?
Фейерштейн С., Прибыл Б. - Oracle PLS.QL. Для профессионалов

Для богатеньких, и чтоб совсем обмазаться:
Покупайте книги Burleson'а ( потому что в интернете их обычно нет, особенно новых и самых нужных ( типа Advanced Oracle SQL Tuning))

Postgress:
Bartolini G., Ciolli G., Riggs S. - PostgreSQL Administration Cookbook ( средненькая такая книга для тех кто хочет обмазаться бэкапами и тонкими настройками)

Ibrar Ahmed, Gregory Smith, Enrico Pirozzi - PostgreSQL 10 High Performance ( тюнинг)

пограммирование на postgres -
Pavel Luzanov, Egor Rogov, Igor Levshin PostgreSQL for beginners
Regina Obe and Leo Hsu - PostgreSQL: Up and Running

Обмазаться основами:
так как дико модно молодёжно это Postgres
то, пусть будет
Е.Моргунов - Язык SQL. Базовый курс





Аноним 11/08/18 Суб 23:20:08  1245181
>>1245178
ну, бля, проебался с разметкой.
А так кто будет шапку пилить, то добавьте всякие
hackerrank
sql-ex-шарашка

и оф.документация на русском и английском на доки постгресс( там практически все ответы на типичные вопросы, кроме ебучих задачек)
Аноним 12/08/18 Вск 00:53:13  1245216
>>1245178
Еще нужно вбросить туда книги ицыка бен гана по мс скл.
Аноним 12/08/18 Вск 00:53:40  1245217
>>1245178
+ Дейта
Аноним 12/08/18 Вск 05:58:31  1245290
>>1245178
>Давайте.
На Тома Кайта дрочат в основном в рахе. Так как в издательстве пидер его стали певодить и выкидывать на развалы вот эти вот книжки в мягком переплете. В мире он просто какой-то Том. Нигде такой дрочи на него на англоязычных сайтах не видел. Хотя книги, наверное, неплохие.

Бурлесон это чувак со свинорылой аватарой, у которого его дрочь сайт почему-то вылезает в результатах гугола по запросу оракла. На сайте на тривиальные даются так себе ответы. У чувака образование - психолог. (это написано на его сайте же). Всегда считал его и его сайт каким-то смешным недороразумением в интеренте.

С Pavel Luzanov я работал в одном интеграторе. Он был манагером по какому скажут ИТ. Ничего о его великих познаниях в БД не слышал. Может он их скрывал. После того как он устроился в постргепрофешнл к Бартунову, стал вот книги писать. Ну ладно чё.

зы. Сам(я) ни одной книги по Ораклу не читал, кроме документации и интернетов. Мимокрокодил 200+к, был в том числе архитектором.
Аноним 12/08/18 Вск 07:56:50  1245308
>>1245290
Спасибо тебе добрый человек.
Мне 27 и я экселедрочер, надеюсь это всё еще не поздно
Аноним 12/08/18 Вск 15:55:59  1245506
>>1232125
А в двх хцфб не участвовал?
Аноним 12/08/18 Вск 16:04:46  1245510
>>1245506
>хцфб
хомяк шоле?
нет
Аноним 12/08/18 Вск 16:23:38  1245525
>>1245290
половина новичков надрачивает на Кайта, так как у него есть сайт asktom и он неебаца интегратор оракла был, потом стал каким-то директором в корпорации.

Свинорылый Бурлесон не сам пишет свой сайт, у него же целый комплекс идиотов, которые пишут ему и консультирует других, я Бурлесона не очень люблю, но иногда у него есть нужный материал.

Я вот не добавил, но можно добавить русскоязычные ораклдба и прочее, хотя сайты уже давно убил рак.
Аноним 12/08/18 Вск 16:48:02  1245547
>>1245525
>потом стал
Кайт уволился из Оракла два года назад. Был он там типа вайс президентом - таких там штук двести может быть. На сайт асктом он не пишет лет десять. Его ведут какие-то нанятные редакторы из левых стран.

Оракл хотя и пока силён, теряет позиции. Могу говорить за двх. Его место медленно но верно занимают мпп, ин-мемори системы и прочие богомерзкие хадупы.
Аноним 12/08/18 Вск 17:45:05  1245600
>>1245547
ну банковские системы и ИС пока любят оракл, хотя есть постгре, но второй не всегда в нагрузку может.
Аноним 13/08/18 Пнд 16:38:51  1246139
>>1245600
Аноны-ораклисты, а доводилось писать хранимки на Java? Уж больно стремный этот PL\SQL. Как там в 12 версии, работу с XML ускорили? Не нужно больше сохранять XML во временную таблицу чтобы он пободрее шевелился?
Аноним 13/08/18 Пнд 16:40:54  1246142
>>1245600

Банковские системы с DB2/Симетрикс/бигайронZ не слезают, правда только крупные от самого ZOG.
Аноним 13/08/18 Пнд 19:27:26  1246218
>>1246139
очнись. В этом году уже 18 версия будет.
Пиши на pl/sql. Он нихуя не страшный, это просто ты даун.

>>Как там в 12 версии, работу с XML ускорили?
Ты можешь xml инсертить без парсинга прямо в таблицу. Зачем что-то ещё?
Аноним 14/08/18 Втр 01:25:07  1246401
Анонче, я в тебя верю
OCCI кто-нибудь курил?
Нужен способ реализации bulk collect для clob в ResultSet::setdatabuffer - а то некрасиво фетчить 5+к строк по одной и обрабатывать каждую.

В гугле полторы статьи и те для апдейта строк.
Или это делается через getvectorofclobs? Если да, то как в этом разобраться? Он же принимает строку коннекта, а не запрос.

Единственный случай в моей практике, когда в документации оракла нихрена нет практически, а приложениями на плюсах для оракла, видимо, три извращенца вроде меня занимаются, потому не могу найти годных примеров использованияя дурачок и не хочуне могу в джаву
Аноним 14/08/18 Втр 06:08:58  1246432
>>1246218
Про 18с слышал, но заказчик сидит на 11g.

На PL/SQL пишу много лет, я не говорил что он страшный - он стремный и примитивный, не развивается.
Вот и стало интересно, есть ли у кого опыт использования встроенной Java.
Но ты прав насчет дауна, вроде и опыт нормальный, но о 200+к я могу только мечать

Про XML вот пример:

https://pastebin.com/kEnbhLXM

В двух словах - если делать запрос из PL/SQL переменной xmltype, то он будет в разы медленнее чем запрос, который получает предварительно сохраненный xml из таблицы с колонкой xmltype.

Вот результат для XML из 5000 записей на 11g:

Запрос из переменной: 00:00:03.953000000
-------------
Запрос из таблицы: 00:00:00.062000000

В этом примере для таблицы время вставки не учитывается, с учетом вставки оно работает вдвое дольше, но все равно на порядки быстрее запроса из переменной.

Чем объемней xml, тем более впечатляющая разница.


Аноним 14/08/18 Втр 14:54:23  1246596
>>1246142
Даже мелкобанки которые не даже в ТОП 100 по капитализации тоже на Оракле. Ебаться с постгресами нет времени и сил, когда есть обтесанный напильником Оракле.
Аноним 24/08/18 Птн 12:42:38  1251747
>>1222346 (OP)
Господа, а есть ли встроенный в эскуль способ сделать так, чтобы каждое значение в определённой таблице повторялось не более двух раз? Мускуль, если это важно.
Аноним 24/08/18 Птн 15:09:56  1251805
>>1222346 (OP)
На 3 пике все выглядит слишком сложно.
Аноним 24/08/18 Птн 17:11:14  1251871
>>1251747
Есть. Having count(%column%) < 3.
Только правильно укажи группировку.
Аноним 24/08/18 Птн 19:12:45  1251927
>>1246432
Ну у него скоро лицуха кончится.В этом году,например.
Пробовал xml-ку как базу соедтинять?
то есть file-db
Аноним 24/08/18 Птн 19:50:13  1251954
>>1251871
Окей, спасибо большое.
Аноним 25/08/18 Суб 00:56:17  1252164
>>1251871
Блджад, InnoDB не поддерживает инструкцию CHECK? О таком, чёрт побери, надо большими красными буквами поверх названия писать, зря только ебался. Придётся на уровне приложения реализовывать. Ссаное говно.
Аноним 25/08/18 Суб 16:39:18  1252491
Снимок.PNG (8Кб, 693x135)
Сап аноны, есть одна сущность таблица.
Там есть два атрибута столбца. Один - действие, второй - отмена действия.
Подскажите алгоритм, который выведет последнее неотменённое действие.
Аноним 25/08/18 Суб 19:26:05  1252585
>>1252491
select from (select from table
Where cancel is null
Order by counter desc)
Where rownum = 1;

Ну либо select top 1 with ties, если субд поддерживает.
Аноним 25/08/18 Суб 19:32:10  1252590
Снимок.PNG (40Кб, 768x659)
Снимок2.PNG (6Кб, 470x215)
Анонче, на первом пике процедура, на втором запрос к ней.
Вопрос, что это за конструкция такая N'O'?
Я в sql не особо шарю просто, но нужно к этой процедуре через entity framework обращаться, и поэтому нужно понять, как работает.
Подскажите, пожалуйста.
Аноним 26/08/18 Вск 02:01:51  1252768
>>1252585
В табличке инфа о многих людях. Также действие может быть не отменено.
Аноним 26/08/18 Вск 02:13:31  1252769
>>1252768
Сразу об этом надо писать, я откуда знаю, что тебе с группировкой надо.
Если оракл - то keep first агрегатный или row_number().
Если нет - то группировка по людям с having count = max (count) с условием cancel is null.

Что значит твое "действие может быть не отменено"?
Не отмененное действие - null в строке, такой гарантированно будет как минимум один для человека, судя по твоей таблице, потому что назначение действия соответствует null.
Если ты слегка перепутал клавиши и "действие может быть отмененно" в последней строке, то я не вижу проблемы - либо ничего не надо выводить (фильтрацию по null вводишь запросом сверху), либо надо вывести предыдущее - тогда ничего не надо менять.

А ещё бы лучше оригинальный текст задания дал.
Аноним 26/08/18 Вск 10:09:09  1252833
Анон, помоги написать запрос. Я только только вкатился и никак не могу написать запрос под такое задание:
Нужно вывести информацию о велосипедах у которых 6 скоростей И на которых можно ездить вдвоем.
Высрал примерно следующее, но естесна это не работает:
SELECT DISTINCT
FROM Tab1
JOIN Tab2 ON Tab1.ID = Tab2.CarID
WHERE Count = 6
AND
EXISTS (SELECT ID, COUNT(
) FROM Tab1 GROUP BY ID) = 2)
Аноним 27/08/18 Пнд 10:45:32  1253496
2018-08-27-1031[...].png (36Кб, 820x277)
Есть табличка в excel'е, там sheet примерно такого вида (пик). Много колонок, много строк. Каждый день приходит выхлоп, который туда заносится в новую колонку.

Хочу все это дело перенести в sqlite.
Использовать собираюсь python и pandas.

Нужно будет запрашивать инфу по номеру и рисовать графики.
Например: сегодня у нас в 0098 g123, а месяц назад было g87, нарисовать график того, как изменялось за месяц в 0098, сколько номеров с выросшим g за 3 месяца и пр.
Или
Вывести список номеров где вчера было g меньше 100, но у которых в названии есть Test.

1) для каждого номера table (0023, например), внутри rows с date,
и columns с распарсеной инфой (num, name, ip etc)
2) для каждого числа table, а внутри уже данные?

Как в панде сделать индексом первую row колонки?

Времени читать книжу о том как дизайнить базы правильно нет.
Аноним 27/08/18 Пнд 21:32:52  1253781
>>1222346 (OP)
Может ли в MYSQL триггер активироваться и от UPDATE и от INSERT, или нужно лепить два разных триггера?
Аноним 27/08/18 Пнд 21:37:13  1253784
всем привет, я тут новенький
а что вы здесь делаете?
Аноним 30/08/18 Чтв 07:45:32  1255136
В шапку https://pgexercises.com/
Аноним 30/08/18 Чтв 13:28:35  1255279
>>1252590
Оказывается эта N означает Unicode. Пидарасы, сказать не могли? Или вы настолько ничтожные, что даже этого не знаете?
Аноним 30/08/18 Чтв 22:10:54  1255578
image.png (37Кб, 605x596)
>>1242851
Можно еще как-то вот так через массивы извратиться
Аноним 31/08/18 Птн 00:57:48  1255686
>>1237569
чтобы джойнить функции с таблицей
Аноним 31/08/18 Птн 12:04:54  1255883
15357062693470.png (267Кб, 1920x1080)
анон помоги
есть приложение для бд
рабочее
но
при добавлении новых данных все данные дублируются
удаление прописано но не работает

https://pastebin.com/w12JcR9Y
Аноним 31/08/18 Птн 12:30:33  1255910
>>1255883
Да
Аноним 31/08/18 Птн 13:50:42  1255973
>>1255910
что исправить?
Аноним 01/09/18 Суб 09:34:59  1256431
>>1255883
Ебани триггер.
Аноним 01/09/18 Суб 23:09:31  1256847
cassandra.png (843Кб, 2028x1518)
Анончик, а есть какие-то отказустойчивые SQL решения, но что бы это не овердорогущий Oracle, и не дорогущий MS SQL Server?

Наш заказчик очень хочет что бы у него было всем прям мега отказоустойчивым, поэтому сует Кассандру в каждую дырку, аргументируя это тем, что она спокойно переживает внезапные падения узлов.
Но хранить в кассандру данные, для которых явно нужна реляционка - та еще боль. Пикрилейтед.

Посему вопросец: если ли какие-то реляционные решения, толерантные к падению? Вот что бы прям можно было потерять узел, и не заметить этого с точки зрения клиента. Посгрес и мускуль не имеют нормальных мастер-мастер связок. А для варианта мастер-слэйв, насколько я знаю, нужен сторонний механизм мониторинга и переключения узлов, что как бы тоже анально.

Вроде как RDS че-то умеет, но это клауд решение.
Аноним 01/09/18 Суб 23:19:24  1256851
>>1256847
Вот потому Oracle столько и стоит, что это нифига не просто сделать.
Аноним 01/09/18 Суб 23:38:33  1256860
>>1256847
> отказустойчивые SQL решения

Постройте отказоустойчивый кластер с живой миграцией. Делов то. Только придется потратиться на vmware esxi, vCenter и кучу другого. Либо на попен сорсе выезжать, но там боль.
Аноним 02/09/18 Вск 00:07:11  1256875
>>1256847
>если ли какие-то реляционные решения, толерантные к падению
Посмотри в сторону индеец зажигай. Поддерживает реляционку, джоины (как локал, так и дистрибьютед) и как кассандра мастер-мастер хуячит. Фактор репликации решаешь для каждого кэша (таблицы) сам, хоть полный репликейтед. И в отличие от кассандры нет диких проблем, что должно быть 50% свободного места быть, или рипейр фейлед. Ну и порешали проблемы с получением неконсистентных данных при развале кластера.

Но это все же не оракл и не поддерживаются констрейнты и если у тебя ехал джоин через джоин по сабквери, то лучше потеститься.

Алсо можешь посмотреть в сторону тараканбд, но не юзал.
Аноним 04/09/18 Втр 17:49:19  1259043
Поясните пожалуйста где я не прав в 16 упражнение на sql-ex
Вот пишу такое, на первой бд проходит, но второй нет.
select p.model, k.model, p.speed, p.ram from pc p inner join pc k on p.speed = k.speed and p.ram = k.ram and k.model < p.model
Прочитал их хелп топики, но там ничего толком не сказано.
Аноним 04/09/18 Втр 19:59:30  1259118
>>1259043
В голос с дебила
Аноним 05/09/18 Срд 15:21:22  1259549
>>1259043
distinct ты забыл
Зы, ОП ты ещё тут сидишь ? Как дела?
нужна помощь помощьSQL 05/09/18 Срд 19:24:54  1259693
Снимок.PNG (15Кб, 683x415)
Снимок2.PNG (3Кб, 400x139)
Снимок4.PNG (6Кб, 390x139)
Снимок35.PNG (4Кб, 408x97)
Хелп, пытаюсь освоить SQL, есть такие задания ,
Аноним # OP  05/09/18 Срд 22:00:34  1259826
>>1259549
Всё норм, я тут.
Аноним 06/09/18 Чтв 19:43:37  1260231
Зачем нужна монга?
Аноним 07/09/18 Птн 00:26:49  1260360
>>1260231
Зачем нужно что-то, когда есть постгрес?
Аноним 07/09/18 Птн 07:47:47  1260417
>>1260231
> Зачем нужна монга?

Чтобы смузихлебы с разработанными и отбеленными анусами чувствовали себя комфортно и могли писать запросы на жабоскрипте.
Аноним 07/09/18 Птн 18:43:39  1260641
>>1260417
Да уж, от жса меня сначала знатно перекосоебило. Но я про подходящие модели данных. Не могу представить ни одной, где не нужна реляционность.
Аноним 07/09/18 Птн 19:59:12  1260670
>>1260641
>где не нужна реляционность
Там где данные, внезапно, неоднородны.
Например, хранение метаданных (ключ-значение) у некоторых сущностей.
Не, накрутить реляционность можно и в таком случае. Но нужно ли?
Аноним 07/09/18 Птн 20:01:07  1260671
>>1260670
Давай конкретные примеры.
Аноним 07/09/18 Птн 20:02:43  1260673
>>1260671
Ты ебобо?
>Например, хранение метаданных (ключ-значение) у некоторых сущностей.
Аноним 07/09/18 Птн 20:03:16  1260675
>>1260673
Еще конкретнее.
Аноним 07/09/18 Птн 20:17:48  1260680
>>1260675
google: EAV
Аноним 07/09/18 Птн 20:40:52  1260690
>>1259549
Спасибо, а я прочитал первый ответ и расстроился, пошел смотреть уже опять книжки читать, видео смотреть..
Аноним 07/09/18 Птн 20:42:14  1260692
>>1260231
умеет в шардирование, в отличии от постгреса
Аноним 07/09/18 Птн 23:53:57  1260757
Двош помоги. 1 как происходит добавления новых индексов? Они же типа хранятся отсортированные и получается чтобы добавить новый нужно смешать все остальные? 2 если в таблицы поменять один тип колонки на другой который требует больше места ( int - bigint например ) происходит смещение данных во всей таблицы? Поясните за эти вопросы аноны или дайте где почитать
Аноним 08/09/18 Суб 00:58:53  1260781
>>1260757
> Двош помоги. 1 как происходит добавления новых индексов? Они же типа хранятся отсортированные и получается чтобы добавить новый нужно смешать все остальные?
Да, потому вставка в таблицы с несколькими индексами замедляется, потому что приходится перестраивать его сегменты
>2 если в таблицы поменять один тип колонки на другой который требует больше места ( int - bigint например ) происходит смещение данных во всей таблицы? Поясните за эти вопросы аноны или дайте где почитать
Думаю, зависит от реализации - оракл, например, не даст тебе сменить тип данных не пустого столбца (следовательно - у не пустой таблицы). А так - да, скорее всего перестроит начальный сегмент таблицы, чтобы запись влезала в блок
Аноним 10/09/18 Пнд 01:04:32  1261673
Есть у меня база MSSQL с таблицей с кучей говна данных, порядка 1488 GB. Структура Id, A int, B bit и куча других. Так вот, мне нужно сделать поиск говна данных по A, у которых B = 1. Я добавил индекс на A, есть ли смысл делать его и на B? Или нужно сделать один индекс, который включает в себя два столбца? Помогите, с меня как всегда нихуя
Аноним 10/09/18 Пнд 16:31:39  1262037
>>1260781
>следовательно - у не пустой таблицы

Тип у пустого столбца можно спокойно менять в непустой таблице:

create table yoba as
select cast (null as number) a, level b from dual
connect by level < 11;
-- Add/modify columns
alter table YOBA modify a varchar2(12);
Аноним 10/09/18 Пнд 19:01:55  1262098
>>1261673
Partial index.
Аноним 11/09/18 Втр 15:53:34  1262567
>>1222346 (OP)
Посоветуйте с чего начать изучать базы данных? Какие книги? Важно ли изначально определиться с СУБД или это не так важно? Может курсы есть какие-нибудь?
Аноним 11/09/18 Втр 20:36:11  1262719
>>1262567
sql-ex.ru

postgers
Аноним 12/09/18 Срд 10:48:25  1262996
Анон, есть таблица, в которой около 150 столбцов. я делаю из нее селект и потом должен сформировать строку аля
"UPSERT INTO "tabl"."prod" VALUES (values for record 1);
...
UPSERT INTO "tabl"."prod" VALUES (values for record n);
"
Как мне это все дело перебирать? Нашел курсор, но там нужно ему задать столбцы, по которым идет переборка, а мне 150 вручную бить не охота.
в sql полный ноль, всю жизнь на шарпе писал, а сейчас решили процедуру для говнонода заебошить.
Аноним 12/09/18 Срд 12:57:48  1263081
>>1262567
Бен Форта "Освой самостоятельно SQL за 10 минут". Для начинающих самое то
Аноним 12/09/18 Срд 19:41:14  1263291
>>1263081
>>1262719
Спасибо. А какую СУБД выбрать? Макрософт - это нормальный выбор?
Аноним 12/09/18 Срд 19:47:48  1263294
image.png (20Кб, 372x446)
ЧЯДНТ?
хочу создать таблицу, занести в нее пару значений, вывести все в аутпут.
код пикрилейтед.
пишет "саксесфулли", нихуя не происходит. (рефреш таблиц делал)
Аноним 12/09/18 Срд 20:00:12  1263299
Screenshot2018-[...].png (262Кб, 480x480)
>>1263294
пиздец, скобки после varchar не поставил. блять это невыносимо. нет ли какой нибудь номальной проги чтобы с пострес работать? эта даже синтаксис не проверяет блять ссука.
Аноним 12/09/18 Срд 21:44:33  1263328
vlcsnap-2015-12[...].png (870Кб, 1280x720)
>>1263299
Почему бы не использовать ОРМ того языка на котором ты говнокодишь с использованием этой базы?
Например на Питоне есть отличный SQLAlchemy.
Аноним 12/09/18 Срд 21:48:37  1263333
>>1263291
Ты не очень сообразительный, да?
Тебе же написали: postgres.
Аноним 13/09/18 Чтв 10:50:50  1263480
>>1262996
Все, забил хуй, сделал выгрузку из базы и скрафтил все через js. Ебал я эти базы.
Help Аноним 14/09/18 Птн 12:14:33  1264062
Screen Shot 201[...].png (117Кб, 2560x330)
Screen Shot 201[...].png (149Кб, 2560x354)
Есть два select-a которые возвращают таблицы с одинаковыми(кроме последнего) столбцами, которые надо объединить в одну таблицу сгруппированную по полю name.
Пикрелейтед - результат выборки, результат второго селекта такой же, только там "col_2" вместо col_1.

Пикрелейтед 2, то что я получаю используя FULL OUTER JOIN second_table ON first_table.name = second_table.name , но проблема в том что оно джоинит не все записи из второй таблицы (т.е. есть строки где col_2 = <nul> но нету где col_1=<nul>, а они должны быть), где я проебался, не тот join использую или что ?
Бд - postgresql
Аноним 14/09/18 Птн 14:26:49  1264143
>>1264062
А все, сам разобрался уже
Аноним 17/09/18 Пнд 10:31:39  1265433
image.png (3Кб, 392x57)
Помогите, пытаюсь выбрать максимальное значение из таблицы, но их там несколько, и sql выбирает только первое максимальное, на остальные ему пофиг, как это можно поправить?
Аноним 17/09/18 Пнд 10:36:13  1265438
>>1265433
ya dolboyob, zachem to napisal price vmesto speed...
Аноним 17/09/18 Пнд 11:13:13  1265455
Анон мне надо поставить точки в конце разных фраз разных строк. Как это можно сделать в майсикуэле?
Аноним 18/09/18 Втр 15:56:35  1266106
>>1265455
Как ты определяешь, что фразе пришёл конец?
Аноним 18/09/18 Втр 15:58:53  1266107
>>1265433
А разве не должен выбирать одно?
Ты даже в постановке задачи на Дваче написал
>пытаюсь выбрать МАКСИМАЛЬНОЕ ЗНАЧЕНИЕ из таблицы

Сформулируй номрально задачку.
Аноним 18/09/18 Втр 18:58:32  1266219
>>1263299
Датагрип, сычуш
Аноним 18/09/18 Втр 19:24:09  1266226
15250941691200.jpg (37Кб, 720x679)
>>1266106
В моем случае, если после символа(буквы) во фразе не стоит другой символ или пробел, то это конец фразы.
Аноним 18/09/18 Втр 19:53:25  1266242
>>1266219
Не понял, я тебе помочь хочу, ответь нормально.
Что такое датагрип, в терминах май скл, непонятно.
Аноним 18/09/18 Втр 22:06:55  1266304

>>1266226
>после символа не стоит другой символ или пробел

Приведи пару примеров, ни хуя непонятно
Аноним 20/09/18 Чтв 01:53:29  1266901
>>1266304
Ну например есть столбец text varchar 512. В нем фразы по типу 'Сап, двач'. Эта фраза состоит из букв, символов(,) и пробелов. Буква "ч" в слове двач- конец фразы, потому что после нее нету ни пробела, ни буквы, символа.
Аноним 21/09/18 Птн 19:33:32  1267900
>>1266901
я правильно понимаю, что тебе надо поставить точку после последнего символа?
Если да, то
>select concat(text, '.') from t_data

Если нет, то ты крайне хуево умеешь выражать свои мысли.
Аноним 22/09/18 Суб 00:16:28  1268051
>>1241169
> Всем привет.
> Какие вопросы по 2ch вы можете задать, чтобы отличить ньюфага от долбаеба?
> (trollface)
Аноним 24/09/18 Пнд 11:01:12  1269371
В общем, долблю сайт в задний конец на PHP. Есть таблица с пользователями, таблица некоторых актов, связанных с этими пользователями, и рейтинги участия пользователя в акте, идущие отдельной таблицей. Подскажите, к можно на Секелях выбрать среднее значение рейтинга для конкретного пользователя и отсортировать их по нему?
Аноним 24/09/18 Пнд 11:49:54  1269390
>>1269371
>таблица с пользователями - d_usr (id, name)
>таблица некоторых актов - d_act (id, name)
>рейтинги участия пользователя в акте - t_usr_act (usr_id, act_id, usr_rating)
>SELECT
>u.id,
>u.name,
>avg(ua.usr_rating) as avg_usr_rating
>FROM d_usr u
>LEFT JOIN t_usr_act ua ON u.id = ua.usr_id
>GROUP BY
>u.id,
>u.name
>ORDER BY avg_usr_rating DESC
Аноним 24/09/18 Пнд 14:56:21  1269467
>>1269390
Премного благодарен, буду пробовать.
Аноним 24/09/18 Пнд 22:29:14  1269732
8GKr07WEvM.jpg (49Кб, 483x604)
Базач, помоги оптимизировать запрос.
Есть запрос с двумя JOIN, который отрабатывает за доли секунды. Понадобилось мне еще одно поле из другой таблицы, дописал еще LEFT JOIN по двум полям.
Запрос стал выполняться 25 секунд. Все таблицы небольшие, по 2000-5000 строк в каждой. В результирующем наборе 5к строк.

Был запрос такой, быстрый:
SELECT ma.answer_id, m.date, ma.percentage FROM measuring_answers ma INNER JOIN answers a ON a.poll_id = АЙДИ_ОПРОСА AND a.id = ma.answer_id LEFT JOIN measurings m ON m.id = ma.measuring_id ORDER BY date;

Стал такой, медленный:
SELECT ma.answer_id, m.date, ma.percentage, mp.votes FROM measuring_answers ma INNER JOIN answers a ON a.poll_id = АЙДИ_ОПРОСА AND a.id = ma.answer_id LEFT JOIN measurings m ON m.id = ma.measuring_id LEFT JOIN measuring_polls mp ON mp.measuring_id = ma.measuring_id AND mp.poll_id = a.poll_id ORDER BY date;

Я с базами на вы, поэтому во всех базах первичный ключ - это просто id. Теоретически в таблице measuring_polls первичным ключом может быть связка measuring_id + poll_id - эта комбинация всегда уникальна. Но я такое еще не умею, и не знаю, будет ли так быстрее.
Аноним 25/09/18 Втр 01:01:23  1269782
>>1269732
Приложи лучше планы запросов до и после.
Аноним 25/09/18 Втр 07:39:19  1269822
>>1269782
Эх, спасибо за удочку.
Убил джва часа, но разобрался с explain, почитал про индексы, настроил логирование медленных запросов.
Сделал CREATE INDEX measuring_id_polls ON measuring_polls(measuring_id, poll_id); и теперь запрос выполняется за десятую долю секунды.
Аноним 25/09/18 Втр 18:12:30  1270117
Аноны, разбираюсь с бд, конкретно с postgresql. Вот у меня есть таблица с id пользователей в базе (допустим, это мои друзяшки из вкшки, которых я вчера вытащил из апи). Сегодня я, допустим, часть их удалил, часть добавил, вот я снова вытаскиваю список id из api и хочу его актуализировать в базе. Как это лучше сделать? Удалить все записи и внести их заново?
Или вот я хочу удалить часть записей каких-то с определенными id. Как это лучше сделать? Тупо в цикле по запросу на id? Или писать один запрос, а в него подставлять в цикле по условию на id, чтобы результат был типа
... WHERE user_id = 1 OR user_id = 2 и т.д.
Гуглю и не могу найти таких примеров что-то, только по диапазону идентификаторов.
Аноним 25/09/18 Втр 20:25:28  1270198
Секелюшники, подскажите, хули MySQL выёбывается на это:

ALTER TABLE Хуи AUTO_INCREMENT = (SELECT MAX(номер) FROM Хуи) + 1

Короче, удаляю элемент и хочу немного поубавить автоинкремент, если он пропускает лишние значения в конце.
Аноним 25/09/18 Втр 21:16:26  1270229
>>1270198
Спешите видеть, макака не может в сиквел.
Аноним 25/09/18 Втр 21:51:31  1270240
>>1270117
>Удалить все записи и внести их заново?
Очевидно, глупое решение.
В целом, если у тебя вкшный id - PRIMARY, либо хотя бы UNIQUE, то можешь просто добавить всех друзей заново в существующую таблицу. Старые просто не добавятся, ибо такой id уже существует. Новые - добавятся.
В случае же если требуется еще сделать UPDATE старых друзей (например, мало ли сменилось имя), то делаешь UPDATE, если INSERT закончился неудачей.
Аноним 25/09/18 Втр 23:09:29  1270307
>>1270240
>то делаешь UPDATE, если INSERT закончился неудачей
Открой для себя ON CONFLICT DO UPDATE ...
Аноним 26/09/18 Срд 00:00:19  1270326
>>1270229
При чём тут "не может"? Вопрос был о том, почему автоинкременту можно присвоить только число.
Аноним 26/09/18 Срд 00:25:22  1270340
15334729066451.jpg (34Кб, 560x560)
Анчоусы, у меня опять траблы с производительностью.
Я настроил логирование медленных запросов (более секунды), и периодически вижу там COMMIT, занимающий 3 секунды, или даже простой INSERT INTO measuring_polls (measuring_id, poll_id, votes) VALUES('чиселко', 'чиселко', 'чиселко'), занявший полторы секунды.
За COMMIT скрывается около десяти простеньких INSERT, типа такого, что повыше. Инсерты идут из цикла foreach, потому что похапешный PDO не умеет мультиинсерт на массиве неизвестной длины, как я понял. Некоторые заканчиваются фейлом из-за дублирующегося UNIQUE, так было задумано.
Далеко не каждый коммит и тем более инсерт попадает в лог, только некоторые. Это как-то фиксится или это просто лаги жесткого диска при записи?
Аноним 26/09/18 Срд 00:43:48  1270347
>>1270198
ALTER TABLE Хуи AUTO_INCREMENT = SELECT MAX(номер) + 1 FROM Хуи

попробуй
Аноним 26/09/18 Срд 00:56:25  1270353
>>1270347
До пизды (в т. ч. со скобками, в которые берётся подзапрос):

> #1064 - У вас ошибка в запросе. Изучите документацию по используемой версии MySQL на предмет корректного синтаксиса около '(SELECT MAX(номер) + 1 FROM Хуи)' на строке
Аноним 26/09/18 Срд 01:51:17  1270369
>>1270347>>1270198
Вы не охуели мешать DDL и DML в одном запросе? В переменную и EXECUTE IMMEDIATE
Аноним 26/09/18 Срд 08:29:41  1270432
>>1270369
Так пишешь, будто в этом есть что-то плохое. Секелям не похуй ли, в одном я запросе это сделаю или так:

> $последний_номер = $БД->Запросить_ячейку('SELECT MAX(номер) FROM Хуи');
> $БД->Выполнить_запрос('ALTER TABLE Хуи AUTO_INCREMENT = ' . ($последний_номер + 1));

Результат тот же, только кода больше и запроса два.
Аноним 26/09/18 Срд 10:55:59  1270462
>>1270432
Ты сейчас сделал 2 запроса к БД, вместо одно, как было до этого. Дебил.
Аноним 26/09/18 Срд 12:19:24  1270491
>>1270462
Дебил тут ты, а не я. По-моему, я об этом и пишу. Или ты думаешь, тот запрос выполняется? Долбоёба слепошарого кусок.
Аноним 26/09/18 Срд 16:11:00  1270553
>>1270240
> Очевидно, глупое решение.
Да я тоже не в восторге, но это первое что пришло в голову.
> просто добавить всех друзей заново в существующую таблицу.
id уникальные, но не primary. С добавлением всё более-менее понятно, только вот при конфликтах primary key инкрементируется всё равно. Почитал интернеты, оказалось, что так и задумано, только вот не понял, стоит ли с этим бороться или забить.
Вопрос больше про то, как лучше удалить сразу несколько записей по id, которые не идут друг за другом.
Пока вот такую конструкцию придумал:
> DELETE FROM friends WHERE friends.user_id IN (SELECT * FROM unnest(%s))
И вторым аргументом в execute() список id пользователей, которых хочу из таблицы убрать. Он лист преобразует в array постгрес и подставит в запрос. Вроде работает, но правильно ли так делать?
Аноним 26/09/18 Срд 18:08:28  1270592
>>1270432
Представь себе, не похуй. Потому что dml запрос будет выполнять движок, который о ddl знает ровно столько же, сколько ты о базах данных. Естественно он нижняя тебе не посчитает и пошлёт нахуй с ошибкой синтаксиса.
Аноним 26/09/18 Срд 18:21:21  1270600
>>1270592
> нижняя
Ничего
Аноним 26/09/18 Срд 18:53:27  1270616
Еще вопрос: вот у меня есть таблицы:
> users: id (pk), vk_id, name
> artists: id (pk), name, genre
> users_artists: user_id, artist_id, tracks_num
То есть, я собираю таблицу с друзяшками, таблицу с исполнителями из аудиозаписей всех друзяшек и таблицу, в которой содержится инфа у какого пользователя какие исполнители в аудиозаписях и сколько треков этих исполнителей. Естественно в последней таблице ни одно поле не является уникальным, но уникальным зато является сочетание (user_id, artist_id). Я хочу при одновременном совпадении обоих полей обновлять поле tracks_num, но INSERT ON CONFLICT выдает ошибку
> there is no unique or exclusion constraint matching the ON CONFLICT specification
Я так понимаю, ON CONFLICT работает только с теми полями, у которых есть аттрибут UNIQUE. Помоги, анон, пожалуйста. Никак не могу сообразить как в моем случае написать запрос, чтобы не было дублирующихся сочетаний. То есть, если в последней таблице уже есть пользователь с id n и у него уже есть исполнитель с id m, то не вставлять еще одну запись, а у существующей обновить поле tracks_num.
Аноним 26/09/18 Срд 23:03:04  1270709
>>1270340
Что за СУБД? По идее, за исключением случаев блокировок, сам commit должен выполнятся мгновенно(данные уже на диске/в буфере).
Аноним 26/09/18 Срд 23:07:32  1270711
>>1270592
Нет, дело лишь в хуёвой реализации языка запросов.
Аноним 26/09/18 Срд 23:54:41  1270733
Аноны, каким простым запросом можно удалить из таблицы все записи, где данные повторяются в одной колонке?
Аноним 27/09/18 Чтв 05:53:13  1270792
>>1270709
MySQL 5.6.40
Аноним 27/09/18 Чтв 12:13:30  1270898
>>1222346 (OP)
>Select id from tbl_table_with_id where id = (select max(id) from tbl_table_with_id)

Поясните что не так?
Аноним 27/09/18 Чтв 13:05:27  1270930
>>1270898
А что не так? Кроме того, что достаточно одного подзапроса.
Аноним 27/09/18 Чтв 14:14:40  1270967
если в кратце, MariaDB Это тоже самое, что MySQL

Что перспективнее ставить на свои проекты- MySQL или PostgreSQL?
Аноним 30/09/18 Вск 09:39:25  1272241
Сап, аноны. Не пинайте сильно, поясните, будьте добры, за принципы ACID в бд.

Если происходит транзакция, допустим на изменение, затрагивающая множество связанных данных, и в этот момент параллельно происходит запрос, допустим на чтение, какого-то подмножества из этих данных, что должно происходить

1) Запрос на чтение будет ожидать окончания транзакции?
-- 1.1) А если транзакция выполняется ну пиздец как долго (в теории), часы-сутки-недели?
2) Запрос на чтение не будет ожидать окончания транзакции и
-- 2.1) Окончится ошибкой
-- 2.2) Получит данные, которые были до начала транзакции
Аноним 30/09/18 Вск 11:50:35  1272270
>>1272241
Ты хоть бы в вики заглянул. Зависит от уровня изоляции транзакций.
Аноним 30/09/18 Вск 18:14:42  1272455
>>1270967
>MySQL или PostgreSQL?
BUMP
Аноним 30/09/18 Вск 21:48:56  1272562
>>1272455
Postgres
Аноним 01/10/18 Пнд 22:05:21  1273006
>>1272455
Oracle
Аноним 02/10/18 Втр 01:26:44  1273067
Тупой вопрос от новичка.
Есть две таблицы:
FUNDS с полями id, name, comment
BALANCE с полями id, fund, balance
Поля BALANCE.fund и FUNDS.id связаны по primary-foreign key (в балансе fk, в фунде - pk)
не могу найти, как мне делать селеет так, чтобы в запросе типа
SELECT fund,balance FROM BALANCE у меня вместо айдишников было FUND.name. Я подозреваю, что это какой-то типа JOIN но я тупой и не могу составить запрос. Возможно ли это вообще?
PostgreSQL, есличо
Аноним 02/10/18 Втр 01:58:19  1273071
>>1273067
select name, balance
from balance
inner join funds
on balance.fund = funds.id;

join разных типов бывает, посмотри, какой подходит тебе
Аноним 02/10/18 Втр 09:27:23  1273156
>>1273071
Этого более чем достаточно!
Огромное тебе спасибо, добрый анон!
Я пока ковырялся, пришел к такому вот решению:
SELECT id,(SELECT name from funds where funds.id = balance.fund) as balance FROM balance;
Так нельзя сделать? Чем Join лучше?
Аноним 02/10/18 Втр 09:28:44  1273158
Блин, криво вставил кусок, правильно так:
SELECT id,
(SELECT name from funds where funds.id = balance.fund) as fund,
balance FROM balance
Аноним 02/10/18 Втр 09:30:30  1273160
>>1273158
Это тоже джойн, по факту.
Но лучше переделай на джойн и все будет так красиво
Аноним 02/10/18 Втр 09:34:55  1273162
>>1273160
Ок, спасибо за науку!
Аноним 02/10/18 Втр 10:12:44  1273182
>>1273162
Вообще в оракле, например, построится план запроса как для джойна обычного - то есть что ты сделаешь через поздзапрос, что через левое соединение - разницы не будет

Только твой вариант упадет, если вдруг нарушено ограничение целостности в таблице funds и найдется несколько записей на один id
Аноним 02/10/18 Втр 11:24:32  1273219
>>1273156
Так как у тебя свзяка pk/fk ничем, план скорее всего одинаковый построится, но вообще, такие подзапросы могут возвращать не одну строку, а несколько, и тогда всё поломается. Плюс он более трудный для понимания.
Аноним 02/10/18 Втр 14:45:29  1273335
>>1273006
он же ПЛАТНЫЙ? не?
Аноним 02/10/18 Втр 21:31:09  1273590
>>1273335
Нищий что ли?
Аноним 02/10/18 Втр 21:43:08  1273593
А в этом ИТТ только реляционки?
Аноним 03/10/18 Срд 14:59:13  1273943
>>1273590
Зачем какой-то конторе тратиться на платную БД, когда можно развернуть элитный проект на PostreSQL - и ничего не потерять?

Да, я нищук. Но даже будь у меня большие деньги на проект, я бы не стал просто так тратиться на БД
Аноним 03/10/18 Срд 20:59:18  1274124
1538589558383.png (21Кб, 967x252)
Сап, pr
Может кто-нибудь простым языком объяснить суть уровней изолированности объяснить, чтобы решать такие задачи как на пикрил. Ну и посоветовать годноту по теории, конечно.
Пиздец блядь, 2 года с базами работаю, а теорию не знаю, стыдно.
Аноним 03/10/18 Срд 21:09:16  1274129
>>1274124
Все от СУБД зависит. В книжках Тома Кайта и Ицыка Бена Гана всё это расписано.
Аноним 03/10/18 Срд 21:25:32  1274145
>>1274129
Вторую бегло читал, шоб писать код и чтобы получать 150к/нс мес. Видимо пропустил.
Сможешь простыми словами это объяснить?
Аноним 03/10/18 Срд 21:38:35  1274150
>>1274145
Там целая глава.
Аноним 03/10/18 Срд 22:22:05  1274172
>>1274150
Пиздос. Пойду ковырять мсскл. А ответ какой должен быть на задачу?
Аноним 03/10/18 Срд 23:05:45  1274207
>>1274129
>>1274124
Не слушай его.
От СУБД зависит то, какие поддерживаются уровни изоляции, но теория - она одна.

Очень просто.
Грязное чтение(read uncommitted) - твои изменения видны всем в любой момент, даже если они не зафиксированы.
Обычное чтение(read committed) - всем видны только зафиксированные данные.
Повторяющееся чтения(я бы сюда и фантомные отнес, repeatable/phantom reads) - если в пределах транзакции ты делаешь агрегированный запрос в момент времени т1, потом другая транзакция в момент т2 меняет какие-то данные и фиксирует их, то если ты запускаешь этот же запрос в момент т3, ты должен получить такой же результат, будто никаких изменений не было. Фантомные чтения - то же самое, только без агрегации: селект всех строк в т1 и в т3 абсолютно идентичен, даже если в момент т2 кто-то добавил новую строку и закоммитил инсерт. То есть одна штука за апдейты отвечает, вторая за инсерты, а смысл один - во время транзакции одинаковые селекты в разное время дают одинаковый результат.
Сериализованные транзакции - всегда пишут, что якобы транзакции выстраиваются в ряд и система становится однопользовательской, а все зависит от базы. Оракл, например, образно говоря, делает тебе снэпшот базы на момент начала транзакции и кто бы что не делал, ты будешь видеть ее только в таком виде до конца транзакции, но нюансы связаны с оракловской реализацией, так что в общем сказать не могу.
Притом, если две транзакции не будут трогать одни и те же строки, то вставка в таблицу на основании ее же данных становится очень интересной, инфу об этом я нарыл вроде в оракловской документации.

Вроде понятно описал, если что - постараюсь объяснить подробнее и понятнее.
Аноним 03/10/18 Срд 23:13:08  1274208
>>1274207
Спасибо, стало намного более понятно, именно этого и хотел.
А как такие задачи решать с этими знаниями?
Аноним 04/10/18 Чтв 09:21:05  1274281
Столкнулся с тем, что надо будет перетягивать базу оракла в mssql раз в неделю. Какой самый простой путь? Сделать пакет шоб тащил, думаю несложно, но на сервак наверное кучу аддонов надо нахуярить? (2014 стоит). Алсо, можно ли в оракле права доступа на селект для сервака с мс прописать?
Аноним 04/10/18 Чтв 09:52:33  1274299
>>1274208
Представлять то, о чем написано.
Открылась транзакция, поменяла данные и до коммита две другие транзакции читают эти же данные.
Read uncommitted увидит единицу, а read committed увидит ноль. Почему - я расписал выше.
Аноним 04/10/18 Чтв 10:18:45  1274318
>>1274299
Я понял, спасибо. Само задание на уровни первый раз вижу, с запросами проблем не было.
Аноним 04/10/18 Чтв 12:29:08  1274372
qkZvZuL.jpg (50Кб, 640x480)
ИТТ Батя Т-Скуль, овер 12 лет в профессии
Задавайте ваши ответы, если есть желание.

>>1274124
Читни Ицика Бен Гана, пидор.


Аноним 04/10/18 Чтв 14:14:15  1274447
>>1274372
Какой наиболее простой по нагрузке способ в MSSQL заменить значения на выводе, если они меньше X?
Насколько использование CTE для повышения читаемости тормозит запросы? Стоит злоупотреблять?
Аноним 04/10/18 Чтв 14:15:17  1274450
>>1274372
Алсо посоветуй гайдов как работать с R в MSSQL.
Аноним 04/10/18 Чтв 14:21:24  1274460
>>1274372
Как перекатиться с этого всего на бигдату?
Аноним 04/10/18 Чтв 15:11:03  1274510
>>1274447
>Для повышения читаемости
если сравнивать подхапросы и cte, то это одно и то же.

злоупотреблять не стоит, конечно, как начнёшь большой сте с другим сте дожойнить, хотя бы 50 000 строчек в каждом, то поймёшь, что что-то не так.
Аноним 04/10/18 Чтв 15:15:52  1274517
>>1274510
Спасибо, анон
Как научиться оптимизировать запросы, чтобы понимать как их ускорить?
Аноним 05/10/18 Птн 06:31:05  1274907
>>1274517
Научиться разбирать план запроса
Аноним 05/10/18 Птн 13:56:05  1275079
>>1274460
Мои собственные изыскания показали, что на бигдату перекотиться можно только по случаю и по знакомству. Я так пони, что в Мск биг дата тема хайповая, и тут половина людий сами не знают что за биг дата и что с ней делать. Я, в итоге, забил на бигдату и покатился в фулстак.

Торадиционного варианта с "читни книг катай видосы" тут нет, хотя бы потому, что БИГ дату ты у себя на коферарке дома не поднимешь. Для БИГ даты нужны БИГ компании. А им, в свою очередь, нужны готовые спецы которые будут делать работу сдесь и сейчас, а не чуваки которые может и перспективны, но на отрезке полгода-год.

Обзаводись знакомствами, гоняй на семинары и конференции, может через расширение круга знакомств ты и придешь к успеху.


Аноним 05/10/18 Птн 13:56:28  1275080
>>1274450
Я не работаю с Р
Аноним 05/10/18 Птн 14:00:36  1275085

>>1274447
Что значит "заменить значения на выходе", обизян, а?
Учись внятно формулировать свой вопрос; правильно

составленный вопрос -- половина ответа на него.
>Насколько использование CTE для повышения читаемости тормозит запросы? Стоит злоупотреблять?

Зависит какое ЦТЕ. Лично я считаю, что использовать ЦТЕ "для повышения читаемости" ебаное дно.

ЦТЕ нужно для очень конкретных вещей, например для рекурсии. Если ты что-то другое хочешь делать через ЦТЕ, остоновись и ПОДУМОЙ почему. Если ты делаешь это не внутри инлайн фунции, с вероятностью 99% ты делаешь это напрасно.

В оставшемся проценте случаев ты пишешь ЦТЕ, потому, что задачу вменяемо можно решить только через него.
Аноним 05/10/18 Птн 14:04:39  1275087
>>1274517
Ставишь просмотрщик планов от скульсентри
https://www.sentryone.com/plan-explorer

В отличие от ебаной параши, которая встроена в SSMS, сразу тебе показзывает нагрузку, потоки данных, узкие места и миллион метки.

Дальше смотришь какие операции жрут у тебя максимум от твоих запросов

Дальше смотришь свой код, и ДУМОЕШЬ как можно избежать этих узких мест.

Ну посмотри какие нить базовые видосики по "Understanding a SQL Server execution plan"
Аноним 05/10/18 Птн 14:12:29  1275093
>>1274510
>если сравнивать подхапросы и cte, то это одно и то же.
Я включу зануду, и отмечу, что для протокола. С огромной долей вероятности интерпретатор построит для НЕРЕКУРСИВНОГО ЦТЕ и для соответсвующего подзапроса абсолютно одинаковые планы. Но бати пишут, что бывают случаи, когда планы получаются разные.
Лично я с таким эффектом не встречался, по краней мере не помню, чтоб были какие-то спецэффекты, которые заставили бы меня делать выбор между цте и подзапросом.

Однако нюансы, всеже, важны.
Аноним 05/10/18 Птн 14:16:22  1275096
>>1275093
PS
http://www.sql.ru/forum/1163167/vopros-pro-povedenie-ste?hl=cte%20%ef%ee%e4%e7%e0%ef%f0%ee%f1
Аноним 05/10/18 Птн 14:22:59  1275102
>>1275096
PPS
http://www.sql.ru/forum/1098002/cte-horosho-ili-ploho-i-v-kakih-sluchayah?hl=cte%20%ef%ee%e4%e7%e0%ef%f0%ee%f1
sage 05/10/18 Птн 15:12:22  1275136
Есть тут спецы по DB2? Имеется множество таблиц и один MQT. Этот MQT построен на джойнах этих таблиц. Поставили в продакшен, и теперь, если обновляется одна из таблиц, входящая в MQT, то этот MQT не обновляется сам.

Собсна, 2 вопроса.

1. Какого хрена не обновляется и зачем эта фича тогда вообще нужна?
2. Как решить проблему? Неyжели нельзя просто сделать виртуальную таблицу, которая обновляет информацию вместе с реальными?

Прошу прощения за неровный почерк, я не дб админ, а всего лишь ДЖЕЗВА девелопер.
Аноним 06/10/18 Суб 14:52:35  1275541
>>1274372
Сколько раз херил инфу без бэкапа?
Аноним 07/10/18 Вск 15:36:03  1275987
Аноны, есть таблица в БД, и мне нужно добавить к 2 столбцам ON DELETE SET NULL;. Как мне это сделать не снося таблицу к хуям и не создавая заново?
p.s. PostgreSQL 10.
p.p.s. Хотя бы подскажите как загуглить ибо ничего не нашёл.
Аноним 07/10/18 Вск 20:50:30  1276171
>>1275987
>Как мне это сделать не снося таблицу к хуям и не создавая заново?
А этот вариант чем не устраивает? Сколько данных в таблице?
Аноним 07/10/18 Вск 21:09:55  1276181
>>1276171
Данных немного, но они постоянно в движении, новые приходят/уходят и т.д.
Короче разобрался как сделать.
ALTER TABLE ..... ALTER CONSTRAINT ...и тут вот определил ON DELETE SET NULL;
Аноним 08/10/18 Пнд 11:32:39  1276320
>>1275541
Совсем без бэкапа ни разу, парочку раз были острые проебы которые успел восстановить из параллельных источников.
Аноним 08/10/18 Пнд 16:58:31  1276444
Кто-нибудь знает как подключить R/Python к MS SQL шоб можно было простейший мл хуярить?
Аноним 08/10/18 Пнд 17:24:03  1276461
Select from tbl_table_with_id where id = (select max(id) from tbl_table_with_id)

Посоны, такое можно упростить как-нибудь?

inb4 select
, max(id) from tbl_table_with_id
Аноним 08/10/18 Пнд 17:26:26  1276462
>>1276461
Select звездочка from tbl_table_with_id where id = (select max(id) from tbl_table_with_id)

inb4 select звездочка, max(id) from tbl_table_with_id
Аноним 09/10/18 Втр 15:29:41  1276803
>>1276461
Зелект топ (1) ид фром парашанейм оедер бай айди деск

Откуда блдяь вы такие беретесь?
Аноним 09/10/18 Втр 15:30:21  1276804
>>1276462
рассыпалася на групбаях из за звездочки, ебобо
Аноним 09/10/18 Втр 16:11:05  1276825
Как называется такая архитектура?

1
В одной базе около 10 таблиц, в них содержится
dbo.users, dbo.items, dbo.something, dbo.else и тд

2
Во второй базе около 9000 таблиц, названия которых содержат:
dbo.users, dbo.items429219_0, dbo.items231452_1, dbo.items23125252, dbo.items_myitem и так далее

На какую сам сядешь, на какую мать посадишь?
Аноним 09/10/18 Втр 16:11:48  1276827
Мне в идеале надо конвертировать все таблицы 2го типа в таблицы 1го вида...
Аноним 09/10/18 Втр 16:13:23  1276828
>>1276827
>>1276825
В плане оптимизации и выборок может 2я лучше, но 1я удобнее для разработки
Аноним 09/10/18 Втр 16:39:08  1276841
>>1276825
Так у тебя во втором случае партицированые таблицы, как я понимаю? Там же доступ к ним ничем не отличается от обычных, это просто вопрос хранения, не?

Аноним 09/10/18 Втр 16:59:25  1276848
>>1276841
>партицированые таблицы
спасибо, это слово я искал
Аноним 09/10/18 Втр 17:08:48  1276849
Ладно, теперь встала проблема в оптимизации.
в программе, условно, 9 кнопок. Каждая кнопка выплевывает по 1000 селектов, естественно с задержками.

Как правильно делать селекты, чтобы пользователь не ощущал задержек?
Аноним 09/10/18 Втр 17:25:21  1276852
>>1276849
Читать планы запросов, мониторить нагрузку на систому ввода вывода, переписывать свои ебаные селекты чтобы они вменяемо работали, ИНДЕКСЫ накрутить
Делать ПРЕДРАСЧЕТЫ

Ты сейчас реально очень глубокий вопрос задал, в режиме "хочу чтоб было заебись"

Что за пользователи, что за каналы связи? Что за хранилище данных?
Аноним 09/10/18 Втр 17:28:24  1276854
>>1276852
>Читать планы запросов, мониторить нагрузку на систому ввода вывода, переписывать свои ебаные селекты чтобы они вменяемо работали, ИНДЕКСЫ накрутить
>Делать ПРЕДРАСЧЕТЫ
>
>Ты сейчас реально очень глубокий вопрос задал, в режиме "хочу чтоб было заебись"
>
>Что за пользователи, что за каналы связи? Что за хранилище данных?
MSSQL standalone :)
Каналы 100мбит\с
Пользователи - макаки
Аноним 09/10/18 Втр 17:49:12  1276866
>>1276854
Не,я не кокнретно хотел ответ услышать. Мне там похуй какие у тебя каналы.

И вообще может у тебя и сто мегабит, а читаешь ты с ебаного китайского харда с иолатчем 70

Или крутится твой стандалоне на каком нибудь пентиум ммх

Я просто тебе хотел ПОКАЗАТЬ, что вопрос "ой чет у нас медленно , а надо быстро" требует пиздец какой глубокой проаботки

Но вообще, начни вот с чего

Ебани аналитику от Глена Берри по отсутствующим индексам и статистике топовых ЗАДЕРЖЕК системы

http://sqlcom.ru/dba-tools/express-diagnostic-ms-sql-server/

Аноним 09/10/18 Втр 20:04:38  1276958
>>1276803
Умный какой. А на оракле что делать?
Аноним 09/10/18 Втр 20:35:21  1276983
>>1276958
В оркале ордербаи и топ отменили? Это спецификация языка, макак
Аноним 09/10/18 Втр 20:42:03  1276994
>>1276983
А, лол, оракл макаки не могут в топ


Ну тогда роунамбер посчитай или офсет сделай

http://bfy.tw/KHID
Аноним 10/10/18 Срд 16:01:01  1277326
>>1276866
>
>Не,я не кокнретно хотел ответ услышать. Мне там похуй какие у тебя каналы.
>
>И вообще может у тебя и сто мегабит, а читаешь ты с ебаного китайского харда с иолатчем 70
>
>Или крутится твой стандалоне на каком нибудь пентиум ммх
>
>Я просто тебе хотел ПОКАЗАТЬ, что вопрос "ой чет у нас медленно , а надо быстро" требует пиздец какой глубокой проаботки
>
>Но вообще, начни вот с чего
>
>Ебани аналитику от Глена Берри по отсутствующим индексам и статистике топовых ЗАДЕРЖЕК системы
>
>http://sqlcom.ru/dba-tools/express-diagnostic-ms-sql-server/
>
Спасибо, за вечер не разобрать. ._.
Аноним 10/10/18 Срд 16:09:12  1277328
>>1276994
>А, лол, оракл макаки не могут в топ

Зато у нас (+) вместо километров join лапши.
Аноним 10/10/18 Срд 16:09:38  1277329
>>1277328

И да, where rownum=1 order by ;
Аноним 11/10/18 Чтв 22:12:30  1277883
>>1276983
> В оркале ордербаи и топ отменили? Это спецификация языка, макак
Как вы живёте, блядь?
Аноним 14/10/18 Вск 00:36:09  1278667
select.PNG (18Кб, 682x304)
сап анон

такая проблема
на мой замыленный взгляд написал join корректно, но ide почему-то ругается на ключевое слово select, я хз что это может быть

небольшое описание:
MySQL
две бд и три таблицы
1) db_default -> tb_user, tb_logins
2) db_billing -> tb_operations


Аноним 14/10/18 Вск 01:29:48  1278686
>>1278667
Ничего не знаю о SQL, но попробуй первый аргумент писать на той же строке.
Аноним 14/10/18 Вск 01:32:55  1278687
>>1278667
У тебя гроуп бай по одному полю, а без формул ты выводишь 3.
Аноним 14/10/18 Вск 19:10:18  1279030
>>1278687
если совсем убрать grop by, то проблема не уходит
Аноним 15/10/18 Пнд 11:56:33  1279345
>>1278667
Ну значит у тебя там выше залупа какая то
Поставь ; перед SELECT
Аноним 15/10/18 Пнд 14:58:24  1279473
>>1278667
А меня вот, например, в 11 строке запятая в конце смущает
Аноним 15/10/18 Пнд 15:45:30  1279497
>>1279473
а блядь, и точно
какая запятая между джойнами? рука лицо


Топ тредов
Избранное