Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Выборка, сортировка и исключение [2]

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (2): « 1 [2]   

> Без описания
Viper
Отправлено: 22 Мая, 2009 - 14:58:48
Post Id



Активный участник


Покинул форум
Сообщений всего: 4555
Дата рег-ции: Февр. 2007  
Откуда: Симферополь


Помог: 98 раз(а)




эмм... с CONCAT почти то, но не то...

CODE (text):
скопировать код в буфер обмена
  1. SELECT id, dsn, CONCAT_WS(', ', gid, g_dsn)
  2. FROM #__limits, #__limits_dsn
  3. WHERE gid IN (dsn)
  4. ORDER BY id DESC


т.е. в результате есть последний столбец вида "1, alias" но не попадают alias2 и alias3... чорт побъери... пойду повешусь...


-----
Список фильмов с описанием, блекджеком и... для Joomla? -> https://киноархив[dot]com
Демо нового движка для сайта php.su -> php[dot]su, проект на гитхабе
 
 Top
Champion Супермодератор
Отправлено: 22 Мая, 2009 - 15:05:33
Post Id



Активный участник


Покинул форум
Сообщений всего: 4350
Дата рег-ции: Авг. 2008  
Откуда: Москва


Помог: 57 раз(а)




И что ты сделал? Перечитай мой мост. Я жирным выделил, где должен быть concat.
 
 Top
Viper
Отправлено: 22 Мая, 2009 - 15:28:38
Post Id



Активный участник


Покинул форум
Сообщений всего: 4555
Дата рег-ции: Февр. 2007  
Откуда: Симферополь


Помог: 98 раз(а)




RIGHT JOIN #__limits_dsn AS b ON b.gid = CONCAT_WS(', ', a.dsn) ?

наверно бред... шо-то не могу никак сообразить.


-----
Список фильмов с описанием, блекджеком и... для Joomla? -> https://киноархив[dot]com
Демо нового движка для сайта php.su -> php[dot]su, проект на гитхабе
 
 Top
Champion Супермодератор
Отправлено: 22 Мая, 2009 - 15:34:50
Post Id



Активный участник


Покинул форум
Сообщений всего: 4350
Дата рег-ции: Авг. 2008  
Откуда: Москва


Помог: 57 раз(а)




Почти так.
CODE (text):
скопировать код в буфер обмена
  1. ON concat(',', limits_dsn.g_id, ',') LIKE concat('%,', limits.dsn, ',%')

',1,2,3,' LIKE '%,1,%'
',1,2,3,' LIKE '%,2,%'
 
 Top
Viper
Отправлено: 25 Мая, 2009 - 08:22:46
Post Id



Активный участник


Покинул форум
Сообщений всего: 4555
Дата рег-ции: Февр. 2007  
Откуда: Симферополь


Помог: 98 раз(а)




хм... странно. теперь из первой таблицы данные вообще не выбираются, зато с второй в 3 строки данные.


-----
Список фильмов с описанием, блекджеком и... для Joomla? -> https://киноархив[dot]com
Демо нового движка для сайта php.su -> php[dot]su, проект на гитхабе
 
 Top
Champion Супермодератор
Отправлено: 25 Мая, 2009 - 08:41:20
Post Id



Активный участник


Покинул форум
Сообщений всего: 4350
Дата рег-ции: Авг. 2008  
Откуда: Москва


Помог: 57 раз(а)




Это потому что right join. Поэтому из второй таблицы все строки. Попробуй выведи на экран запрос перед выполнением. Это уже отладка.
 
 Top
Viper
Отправлено: 01 Июня, 2009 - 16:23:33
Post Id



Активный участник


Покинул форум
Сообщений всего: 4555
Дата рег-ции: Февр. 2007  
Откуда: Симферополь


Помог: 98 раз(а)




/back

собстно почитал инфу но опять затык.

CODE (text):
скопировать код в буфер обмена
  1. SELECT a.id, a.dsn AS dsn, b.gid, GROUP_CONCAT(b.g_dsn) AS g_dsn
  2. FROM jos_dsn AS a
  3. LEFT JOIN jos_limits_dsn AS b ON b.gid IN (dsn)
  4. WHERE published = 1
  5. ORDER BY id DESC


я так понимаю GROUP_CONCAT объединяет данные в одну строку. т.е. в результате получаю именно такую строку которую нужно. т.е. теперь колонка dsn вида alias1,alias2

но mysql возвращает только одну строку. даже если строк 10 то все равно вернет только последнюю по id. с предыдущими моими мучениями как увидели что нагородил програмер по БД чуть не побил мну ;(


-----
Список фильмов с описанием, блекджеком и... для Joomla? -> https://киноархив[dot]com
Демо нового движка для сайта php.su -> php[dot]su, проект на гитхабе
 
 Top
Страниц (2): « 1 [2]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« SQL и Архитектура БД »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB