Выборка всех полей и подсчет записей

Статус
Закрыто для дальнейших ответов.

KDES70

Well-Known Member
Регистрация
16.02.2012
Сообщения
73
Здравствуйте!!! помогите с запросом
мне нужно выбрать все поля категорий то есть (id , title ) и подсчитать количество записей
вот что то намудрил но оно не работает записи выводит а количество нет((
Код:
$query = "SELECT id,title,(SELECT COUNT(*) FROM categories) AS kol FROM categories ORDER BY id ASC";
заранее благодарю за помощь!!)
 

Volter9

defined('SURRENDER') or die(); // StarWars
Регистрация
27.05.2012
Сообщения
1 145
А вот так пробовал:

Код:
<?
$sql = "SELECT id,title FROM categories ORDER BY id ASC";
$query = mysql_query($sql);
$count = mysql_num_rows($query);
?>
Или вы хотите получить вместе с SQL запросом?
 

KDES70

Well-Known Member
Регистрация
16.02.2012
Сообщения
73
Код:
function editCatSelect()
   {
	    db_connect();
	 
	    $query = "SELECT id,title,(SELECT COUNT(*) FROM ".DK_DBPREFIX."categories) AS kol FROM ".DK_DBPREFIX."categories ORDER BY id ASC";
	 
	    $result = mysql_query($query);
	 
	    $result = db_result_to_array($result);
	 
	    return $result;
   }
да хотел в запросе понять как это делается
 

CamaroSS

Well-Known Member
Регистрация
21.02.2012
Сообщения
176
Вообще такие вещи делаются двумя запросами, но если это субботний изврат, и я всё правильно понял, то
Код:
SELECT cat.`id`, cat.`title`,t1.`kol`
FROM categories cat
LEFT JOIN (SELECT COUNT(*) AS `kol` FROM categories) t1
ON 1=1
ORDER BY cat.`id`
:laugh:

А если серьёзно, и категории всегда выбираются все, то mysql_num_rows($result) и не парить мозги.
 

KDES70

Well-Known Member
Регистрация
16.02.2012
Сообщения
73
если делать через mysql_num_rows($result) то как мне вывести из функции ?
 

Volter9

defined('SURRENDER') or die(); // StarWars
Регистрация
27.05.2012
Сообщения
1 145
Можешь массив возвращать)
 

CamaroSS

Well-Known Member
Регистрация
21.02.2012
Сообщения
176
Та как угодно.
Можно
Код:
$result = musql_query(...);
return array('count' => mysql_num_rows($result),
	  'categories' => db_result_to_array($result));
Можно вернуть результат db_result_to_array($result) и его count().
Можно просто результат db_result_to_array($result)
 

KDES70

Well-Known Member
Регистрация
16.02.2012
Сообщения
73
ясно спасибо)))
 
Статус
Закрыто для дальнейших ответов.
Верх Низ