Вопрос о проектировании БД - Visavi.net
https://visavi.net/
RSS - Visavi.nethttps://visavi.net/assets/img/images/logo_small.pngRSS - Visavi.net
https://visavi.net/
[email protected] (admin)[email protected] (admin)Wed, 27 Nov 2024 18:43:23 +0300<a href="/users/php">php</a>, в text - текст статьи, в article - ид статьи<br>
Повнимательнее прочитай предыдущий пост, там структура всех 3 таблиц расписана
https://visavi.net/topics/44182/703566
Вопрос о проектировании БД Dmitry KokorinFri, 10 May 2019 17:16:22 +0300Сообщенияhttps://visavi.net/topics/44182/703566<a href="/users/DimmoS">Dmitry Kokorin</a>, что в text и article хранится?
https://visavi.net/topics/44182/703560
Вопрос о проектировании БД phpThu, 09 May 2019 12:46:31 +0300Сообщенияhttps://visavi.net/topics/44182/703560Юзер: id counter<br>
Статья: id text<br>
Авторы: id author article<br>
Запрос:<pre class="prettyprint">
Выборка авторов у которых более 4х статей (5+)
SELECT id FROM users WHERE counter > 4
Выборка статей определенного автора
SELECT text FROM articles WHERE id IN (SELECT article FROM authors WHERE author = ID_AUTHORS)
Выбрать всех авторов статьи
SELECT author FROM authors WHERE article = ID_ARTICLE
</pre>
https://visavi.net/topics/44182/703559
Вопрос о проектировании БД Dmitry KokorinThu, 09 May 2019 10:22:32 +0300Сообщенияhttps://visavi.net/topics/44182/703559Короче говоря, существует ли в природе такой запрос, чтобы удовлетворить мои условия или структуру бд переделывать?<br>
В случае с запросом - конечно, если он будет более-менее лаконичным. Определение функций и т.п. в запросе мне не нужны.<br>
<br>
<blockquote class="blockquote">21 век на дворе, а мы все еще юзаем реляционные бд! - такая шняга.. Пора бы придумать что-нибудь получше.</blockquote>
https://visavi.net/topics/44182/703548
Вопрос о проектировании БД phpTue, 07 May 2019 23:30:08 +0300Сообщенияhttps://visavi.net/topics/44182/703548<a href="/users/JustZero">JustZero</a>, это уже про код говоришь наверное, а я имел ввиду чиста средствами mysql обойтись, безо всякого лишнего кода.<br>
<br>
<em><span style="font-size:x-small">Добавлено через 07:34 сек.</span></em><br>
<a href="/users/JiGaN">JiGaN</a>, <img src="https://visavi.net/uploads/stickers/klass.gif" alt="klass"> у статьи м.б. несколько авторов, у автора - сколько угодно статей. Схема многие:многим. Так вот я и хочу выяснить моей структуры бд достаточно будет, чтобы реализовать соответствующую выборку? (см. выше) В т.ч. есть необходимость выбрать из бд авторов у которых >=5, >=10 статей.
https://visavi.net/topics/44182/703547
Вопрос о проектировании БД phpTue, 07 May 2019 23:16:42 +0300Сообщенияhttps://visavi.net/topics/44182/703547<blockquote class="blockquote">Кому интересно если, так сделал: SELECT * FROM `co_auth` WHERE `title_id` IN (SELECT `author_id` FROM `co_auth` GROUP BY `author_id` HAVING COUNT(title_id) < 5)<footer class="blockquote-footer">@php (Сегодня / 19:23)</footer></blockquote>
Какой ужасный костыль)<br>
А формулировка вопроса точная?<br>
Для одного имени количество книг, а у него их несколько? Если несколько книг, и есть количество, то просто +1 к количеству нет? Здесь крч что-то не так с вопросом)
https://visavi.net/topics/44182/703545
Вопрос о проектировании БД JiGaNTue, 07 May 2019 20:06:09 +0300Сообщенияhttps://visavi.net/topics/44182/703545<a href="/users/php">php</a>, что мешает самому писать количество? у тебя же есть таблица автор. вот в ней сделай поле articles типа int. при создании или удалении постов делай articles++ или --
https://visavi.net/topics/44182/703543
Вопрос о проектировании БД JustZeroTue, 07 May 2019 20:00:00 +0300Сообщенияhttps://visavi.net/topics/44182/703543Кому интересно если, так сделал: <pre class="prettyprint">SELECT * FROM `co_auth` WHERE `title_id` IN (SELECT `author_id` FROM `co_auth` GROUP BY `author_id` HAVING COUNT(title_id) < 5)</pre>
https://visavi.net/topics/44182/703542
Вопрос о проектировании БД phpTue, 07 May 2019 19:23:31 +0300Сообщенияhttps://visavi.net/topics/44182/703542<a href="/users/JustZero">JustZero</a>, ну да, поле с автоинкрементом может быть только одно, для счетчика чего либо отдельную таблицу делать надо тогда наверное.<br>
М.б. выборку лучше придумать типа: select такое-то поле from такой-то таблица и вывести количество title_id у каждого из авторов?
https://visavi.net/topics/44182/703541
Вопрос о проектировании БД phpTue, 07 May 2019 17:25:08 +0300Сообщенияhttps://visavi.net/topics/44182/703541<a href="/users/php">php</a>, какой гемор? Поле типа int в которое плюсуешь при написании или минус при удалении?
https://visavi.net/topics/44182/703540
Вопрос о проектировании БД JustZeroTue, 07 May 2019 17:02:14 +0300Сообщенияhttps://visavi.net/topics/44182/703540<a href="/users/JustZero">JustZero</a>, бл@ ну и гемор! Тип SERIAL подойдет для этого?<br>
<br>
<em><span style="font-size:x-small">Добавлено через 03:08 сек.</span></em><br>
Я могу счетчик сделать с помощью пхп кода и добавлять его в бд, когда что-то новое появляется, а чиста средствами mysql это можно замутить как-нибудь? Кстати, в таблице с авторами не получится счетчик сделать, ведь автоинкрементный тип только один должен быть.
https://visavi.net/topics/44182/703539
Вопрос о проектировании БД phpTue, 07 May 2019 16:45:06 +0300Сообщенияhttps://visavi.net/topics/44182/703539<a href="/users/php">php</a>, наверное лучше счётчик сделать в авторов)
https://visavi.net/topics/44182/703538
Вопрос о проектировании БД JustZeroTue, 07 May 2019 16:03:18 +0300Сообщенияhttps://visavi.net/topics/44182/703538Может быть я и так уже все сделал, только сам пока об этом не догадываюсь? <img src="https://visavi.net/uploads/stickers/D.gif" alt="D"> <br>
<pre class="prettyprint">INSERT INTO BooksAuthors
(ArticleId, AuthorId)
VALUES
(1, 1),
(2, 1),
(3, 1),
(4, 2),
(5, 2),
(6, 3),
(7, 4),
(7, 5),
(7, 6),
(7, 7),
(7, 8)
</pre>
<br>
Это запрос к таблице-посреднику между таблицами со статьями и с авторами. Эта таблица устанавливает соответствие между статьями и авторами посредством идентификаторов. Вопрос-то на самом деле следующий: при такой структуре я могу сделать выборку авторов, например, тех у кого >=5, >= 10 статей? Мне просто хватит алгоритма. Или бд спроектирована неправильно для этого? Вот решить этот вопрос затрудняюсь(
https://visavi.net/topics/44182/703537
Вопрос о проектировании БД phpTue, 07 May 2019 15:51:56 +0300Сообщенияhttps://visavi.net/topics/44182/703537Типа того, только организовать архитектуру бд таким образом, чтобы можно было без нее обойтись.<br>
Не создавать же по таблице для всего подряд?
https://visavi.net/topics/44182/703533
Вопрос о проектировании БД phpTue, 07 May 2019 08:59:38 +0300Сообщенияhttps://visavi.net/topics/44182/703533<a href="/users/php">php</a>, ты не думал хранить инфу обработаную к примеру serialize(), а на выходе его прочитывать
https://visavi.net/topics/44182/703532
Вопрос о проектировании БД АндрейTue, 07 May 2019 08:22:11 +0300Сообщенияhttps://visavi.net/topics/44182/703532