Вы не зашли.
Код:
| span style="color: #0000BB"><?php$q = mysql_query('SELECT * FROM `table`');while($row = mysql_fetch_assoc($q)){echo mysql_result(mysql_query('SELECT COUNT(*) FROM `table2` WHERE `tags` LIKE "%'.$row['name'].'%"'),0);} |
Как обьединить эти 2 запроса, чтобы при выводе в ячейке counter было значение второго запроса и в результате было примерно такое
Код:
| span style="color: #0000BB"><?php$q = mysql_query('???');while($row = mysql_fetch_assoc($q)){echo $row['counter'];} |
? В таблице table поля counter нет
на хую вас вертів
Код:
| SELECT `t1`.`name`, COUNT(`t2`.`tags`) AS `count` |
| FROM `table` AS `t1` |
| INNER JOIN `table2` AS `t2` ON `t2`.`tags` LIKE CONCAT("%", `t1`.`name`, "%") |
| GROUP BY `t1`.`name` |
Спасибо
на хую вас вертів
Но у меня ничего не выводит гг
на хую вас вертів
охуенный фидбэк
Array ( [0] => 42000 [1] => 1305 [2] => FUNCTION fuelen_db.CONCAT does not exist )
на хую вас вертів
Эммм.. похоже на PDO. А какая СУБД используется? MySQL? CONCAT есть в MySQL с древних времен.
Да, PDO MySQL
на хую вас вертів
покажи сам php код в который этот SQL вставляется
Код:
| span style="color: #0000BB"><?phpforeach($db->query('SELECT `t1`.*, COUNT(`t2`.`tags`) AS `count` FROM `categories` AS `t1` INNER JOIN `articles` AS `t2` ON `t2`.`tags` LIKE CONCAT ("%", `t1`.`name`, "%") GROUP BY `t1`.`name`') as $row){print_r($row);}print_r($db->errorInfo()); |
Отредактировано Fuelen (2010.04.03 09:09)
на хую вас вертів
Код:
| CREATE TABLE IF NOT EXISTS `articles` ( |
| `id` int(11) NOT NULL, |
| `tags` varchar(255) NOT NULL |
| ) ENGINE=MyISAM DEFAULT CHARSET=utf8; |
| |
| INSERT INTO `articles` (`id`, `tags`) VALUES |
| (1, 'xxx'), |
| (2, 'yyy'); |
| |
| CREATE TABLE IF NOT EXISTS `categories` ( |
| `id` int(11) NOT NULL, |
| `name` varchar(255) NOT NULL |
| ) ENGINE=MyISAM DEFAULT CHARSET=utf8; |
| |
| INSERT INTO `categories` (`id`, `name`) VALUES |
| (1, 'xxx'), |
| (2, 'zzz'); |
Код:
| span style="color: #0000BB"><?php$db = new PDO('mysql:host=localhost;port=3306;dbname=test', 'root', '');$sql = 'SELECT `t1`.*, COUNT(`t2`.`tags`) AS `count`FROM `categories` AS `t1`INNER JOIN `articles` AS `t2` ON `t2`.`tags` LIKE CONCAT("%", `t1`.`name`, "%")GROUP BY `t1`.`name`';foreach($db->query($sql) as $row){ print_r($row);} |
Код:
| Array |
| ( |
| [id] => 1 |
| [0] => 1 |
| [name] => xxx |
| [1] => xxx |
| [count] => 1 |
| [2] => 1 |
| ) |
Фигня какая-то... Всё не как в людей

В процедурном стиле всё нормально выводит... Ппц
Код:
| span style="color: #0000BB"><?php$q = mysql_query('SELECT `t1`.*, COUNT(`t2`.`tags`) AS `count` FROM `categories` AS `t1` INNER JOIN `articles` AS `t2` ON `t2`.`tags` LIKE CONCAT("%", `t1`.`name`, "%") GROUP BY `t1`.`name`');while($row = mysql_fetch_assoc($q)){ print_r($row);} |
Добавлено спустя 6 минут 32 секунды: Пойду плакать %) ыЫ
на хую вас вертів
Всё заработало. Спасибо
на хую вас вертів
Не знаю

мне кажется, что через то, что я в запросе энтэры на пробелы заменил Гг
на хую вас вертів