Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Объеденение записей / 16 сообщений из 16, страница 1 из 1
28.02.2005, 11:56
    #32936072
VERS
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Объеденение записей
Все привет.
Есть таблица
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
   counter  int( 11 )   Нет    auto_increment              
   state  char( 3 )   Нет                  
   city  text   Нет                  
   areaid  int( 11 )   Нет   0                 
   image  varchar( 250 )   Нет                  
   url  varchar( 100 )   Нет                  
   id  int( 11 )   Нет   0                 
   name  varchar( 250 )   Нет                  
   company  varchar( 250 )   Нет                  
   fax  varchar( 100 )   Нет                  
   tollfree  varchar( 100 )   Нет                  
   broker  varchar( 100 )   Нет                  
   office  varchar( 100 )   Нет                  
   mobile  varchar( 100 )   Нет                  
   email  varchar( 100 )   Нет                  
   info  text   Нет                 
Так вот ... id повторяется для разных city.
То есть скажем есть вот такие записи:
Counter: 1
Id: 455155454
City: Los angeles1
State: CA
-------
Counter: 2
Id: 455155454
City: Los angeles2
State: CA

Как можно объеденить все вот эти записи в одну, чтобы получить что то вроде:
Counter: не важно
Id: 455155454
City: Los angeles2, Los angeles2, .... И так для всех city
State: CA
А вообще, в идеале, мне бы все это обновить в самой базе и удалить остальные записи. Можно в новую таблицу все экспортировать.
пытался через пхп, слишком долго (одна запись 2-3 секунды) и комп грузится, а записей не мало ....

Вот такая х....
С уважением,
Vers
...
Рейтинг: 0 / 0
28.02.2005, 12:33
    #32936183
Berkut
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Объеденение записей
Используй group by Id
...
Рейтинг: 0 / 0
28.02.2005, 12:38
    #32936197
VERS
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Объеденение записей
BerkutИспользуй group by Id
И что мне это дасть???
SELECT id, COUNT(id) AS times, city FROM realtors WHERE 1 GROUP BY id

Это же мне вернет только один city...
...
Рейтинг: 0 / 0
28.02.2005, 13:30
    #32936352
VERS
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Объеденение записей
А почему такая конструкция е хочет работать?
Код: plaintext
1.
2.
3.
SELECT id, 
GROUP_CONCAT(DISTINCT city SEPARATOR ',')
FROM realtors WHERE  1 
GROUP BY id;
Код: plaintext
1.
2.
3.
# 1064  - You have an error in your SQL syntax.  Check the manual that corresponds to your MySQL server version for the right syntax to use near '(  DISTINCT city SEPARATOR ',' )
FROM realtors
WHERE  1  
GROUP 
...
Рейтинг: 0 / 0
28.02.2005, 13:33
    #32936363
Berkut
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Объеденение записей
2 VERS

Вообще-то у Вас один сити и есть:
Код: plaintext
City: Los angeles2, Los angeles2
Или это опечатка?

Или я неверно понял суть вопроса? Group by как раз и "дает вам возможность объединять поля и агрегатные функции в едином предложении SELECT". Или же требуется собрать все города в одну строчку с одинаковыми ID и state ?
...
Рейтинг: 0 / 0
28.02.2005, 13:37
    #32936377
VERS
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Объеденение записей
Berkut2 VERS

... Или же требуется собрать все города в одну строчку с одинаковыми ID и state ?
Точно! Это была очепятка :)
...
Рейтинг: 0 / 0
28.02.2005, 13:41
    #32936387
Berkut
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Объеденение записей
VERSА почему такая конструкция е хочет работать
А какой у Вас MySQL-сервер? Дело в том, что многие фичи, которые описаны в стандартном SQL могут не поддерживаться, в частности в версии MySQL 3, нет поддержки вложенных команд select , представлений, хранимых процедур и функций и т.д. Скорее всего надо уже смотреть мануал по данной СУБД. Что касается использования GROUP_CONCAT , то мне никогда не приходилось использовать данную функцию. Возможно она также не поддерживается в Вашей версии СУБД.

Полезные ссылки:

Справочное руководство по MySQL
...
Рейтинг: 0 / 0
28.02.2005, 13:44
    #32936396
VERS
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Объеденение записей
Berkut VERSА почему такая конструкция е хочет работать
А какой у Вас MySQL-сервер? Дело в том, что многие фичи, которые описаны в стандартном SQL могут не поддерживаться, в частности в версии MySQL 3, нет поддержки вложенных команд select , представлений, хранимых процедур и функций и т.д. Скорее всего надо уже смотреть мануал по данной СУБД. Что касается использования GROUP_CONCAT , то мне никогда не приходилось использовать данную функцию. Возможно она также не поддерживается в Вашей версии СУБД.

Полезные ссылки:

Справочное руководство по MySQL
Версия MySQL 4.0.20a ....
...
Рейтинг: 0 / 0
28.02.2005, 13:49
    #32936410
Berkut
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Объеденение записей
mysql.comGROUP_CONCAT() was added in MySQL 4.1.

about it
...
Рейтинг: 0 / 0
28.02.2005, 13:50
    #32936412
Berkut
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Объеденение записей
По-моему на dklab.ru появилась обновленная версия субд MySQL. Кажется, 4.1.8.
...
Рейтинг: 0 / 0
28.02.2005, 13:58
    #32936436
VERS
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Объеденение записей
А при обновлении ... как мне данные сохранить?
Просто скопировать папку data?
Что мне надо знать :))?
...
Рейтинг: 0 / 0
28.02.2005, 14:16
    #32936477
Berkut
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Объеденение записей
VERSА при обновлении ... как мне данные сохранить?
Просто скопировать папку data?
Что мне надо знать :))?

Чесно говоря не понял вопроса. Можно поконкретнее...
...
Рейтинг: 0 / 0
28.02.2005, 15:45
    #32936754
VERS
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Объеденение записей
Ну я тут начал обновлять мускул ...
А данные теперь как импортировать в новую версию?
...
Рейтинг: 0 / 0
28.02.2005, 16:09
    #32936839
Berkut
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Объеденение записей
мдя-а... я импортом ни разу не занимался. Посмотри в поиске по форуму или создай новый топик. Также можно поискать в инете. На mysql.ru/docs/ есть пунктик "4.8 Клиентские сценарии и утилиты MySQL ".
...
Рейтинг: 0 / 0
28.02.2005, 16:13
    #32936858
DocAl
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Объеденение записей
Данные импортируются без проблем, проблемы могут возникнуть с паролями, и вообще с доступом к новой версии СУБД, об этом следует почитать официальную документацию.
...
Рейтинг: 0 / 0
28.02.2005, 16:42
    #32936940
VERS
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Объеденение записей
DocAlДанные импортируются без проблем, проблемы могут возникнуть с паролями, и вообще с доступом к новой версии СУБД, об этом следует почитать официальную документацию.
Мягко сказано :)) Я тут чуть не выкинул комп.
Но все обошлось.
Всем спасибо!
...
Рейтинг: 0 / 0
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Объеденение записей / 16 сообщений из 16, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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