Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Помогите привести таблицу в нормальный вид / 11 сообщений из 11, страница 1 из 1
15.10.2013, 12:03:42
    #38427908
fijj
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите привести таблицу в нормальный вид
Имеются таблицы, в нескольких полях занесено сразу несколько ключей на другую таблицу. Помимо этого данные поделены на группы. Буду признателен за любую помощь. Необходимо подтянуть текст из другой таблицы и де делать выборку по группам

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
| id | name | txt_id| group_id | group_name|
                          1        first
   1   bill    1,3,5
   2   sam     2,6,7
                          2       second
   1   bill    1,3,5
   2   sam     2,6,7
 
 
| id |    txt    |
   1     .......
   2     .......
   3     .......
   4     .......
   5     .......
   6     .......
...
Рейтинг: 0 / 0
15.10.2013, 12:15:52
    #38427937
Cygapb-007
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите привести таблицу в нормальный вид
...
Рейтинг: 0 / 0
15.10.2013, 12:38:21
    #38427979
fijj
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите привести таблицу в нормальный вид
Cygapb-007 замечательный материал, но у меня нет выхода, что мне дали с тем и приходится работать, необходимы запросы что бы хоть как то привести таблицы к нормальному виду
...
Рейтинг: 0 / 0
15.10.2013, 13:02:16
    #38428024
Cygapb-007
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите привести таблицу в нормальный вид
fijjCygapb-007 замечательный материал, но у меня нет выхода, что мне дали с тем и приходится работать, необходимы запросы что бы хоть как то привести таблицы к нормальному виду Что это означает? Создать новые таблицы и перенести в них данные? Или получить данные в удобном для дальнейшей обработки виду? Тогда что планируется делать далее?

В общем, формализуйте вопрос :)
Структура имеющихся таблиц, пример данных через INSERT, что требуется в итоге...

Из приведенного, например, непонятна завязка на группы, да и что требуется не ясно (что и в каком виде нужно получить).
...
Рейтинг: 0 / 0
15.10.2013, 13:06:00
    #38428032
tanglir
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите привести таблицу в нормальный вид
fijj
Код: plaintext
1.
2.
3.
| id | name | txt_id| group_id | group_name|
                          1        first
   1   bill    1,3,5
   2   sam     2,6,7
OMFG. Неужели пустые места - это нуллы? А обработка должна быть завязана на "порядок строк"(три раза ха-ха)???
Тогда автору имхо ничего не поможет (в смысле, с имеющейся структурой).
...
Рейтинг: 0 / 0
15.10.2013, 14:35:31
    #38428263
fijj
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите привести таблицу в нормальный вид
Да, пустые места это нуллы. Мне необходимо эту таблицу привести к такому виду, что бы можно было простыми запросами получать нужную информацию. Не важно будет ли это одна таблица или две.
Распишу подробнее:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
| id | name | txt_id| group_id | group_name|
                          1        first
   1   bill    1,3,5
   2   sam     2,6,7
                          2       second
   1   bill    1,3,5
   2   sam     2,6,7
 
 
| id |    txt    |
   1       A
   2       B
   3       C
   4       D
   5       E
   6       F
   7       G

В итоге должно получиться:

Код: plaintext
1.
2.
3.
4.
5.
6.
| id | name |   txt  | group_id | group_name|
                          1        first
   1   bill    A,C,E
   2   sam     B,F,G
                          2       second
   1   jone    A,C,E
   2   erik    B,F,G

Так же необходимо получать груп, например:
Код: sql
1.
select * from `table` where `group_id`=2



На что получаю:

Код: plaintext
1.
2.
| id | name |   txt  |
   1   jone    A,C,E
   2   erik    B,F,G

Но при текущем виде таблиц этого сделать невозможно, мне нужно хоть какое то решение на sql дабы не пропускать эти таблицы через какой нибудь самописный парсер, если это возможно
...
Рейтинг: 0 / 0
15.10.2013, 14:39:24
    #38428277
fijj
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите привести таблицу в нормальный вид
Пардон загнал последнию строку в fix тег и растянул страницу, надеюсь модераторы поправят
...
Рейтинг: 0 / 0
15.10.2013, 15:15:14
    #38428335
tanglir
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите привести таблицу в нормальный вид
fijjмне нужно хоть какое то решение на sqlПонимаете, склю всё равно, расположены строки так
Код: plaintext
1.
2.
3.
4.
5.
6.
| id | name |   txt  | group_id | group_name|
                          1        first
   1   bill    A,C,E
   2   sam     B,F,G
                          2       second
   1   jone    A,C,E
   2   erik    B,F,G
или так
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
| id | name |   txt  | group_id | group_name|
                          1        first
   1   bill    A,C,E
                          2       second
   2   sam     B,F,G
   2   erik    B,F,G
   1   jone    A,C,E
или вообще вот так
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
| id | name |   txt  | group_id | group_name|
   2   sam     B,F,G
                          2       second
                          1        first
   1   bill    A,C,E
   2   erik    B,F,G
   1   jone    A,C,E
Поэтому если данные там именно такие (читай нет поля, по которому можно явно упорядочить записи), то увы и ах, скл вам тут ничем не поможет. Придётся-таки "пропускать эти таблицы через какой нибудь самописный парсер", да и то если в оригинале упорядочивание можно откуда-нибудь "вытащить"...
...
Рейтинг: 0 / 0
15.10.2013, 15:47:03
    #38428397
Cygapb-007
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите привести таблицу в нормальный вид
вот вариант http://sqlfiddle.com/#!2/cbfcc/11 , но коряяявыый.... Чуть кто чихнет - и все порушится

А уж про
fijjТак же необходимо получать груп, например:
Код: sql
1.
select * from `table` where `group_id`=2

при такой заполненности NULLами - вообще забудьте
...
Рейтинг: 0 / 0
15.10.2013, 16:17:49
    #38428467
fijj
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите привести таблицу в нормальный вид
Ну что же, всем большое спасибо за ответы, видимо без танцев с бубнами не обойтись)
...
Рейтинг: 0 / 0
15.10.2013, 16:47:49
    #38428511
Cygapb-007
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите привести таблицу в нормальный вид
...
Рейтинг: 0 / 0
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Помогите привести таблицу в нормальный вид / 11 сообщений из 11, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]