![]() |
[mysql] как получить количетво?
Как получить количествой записей в таблице?
Допустим, есть таблица ТЕКСТ | ВИДИМЫЙ 1 - lalala | 0 2 - lalala | 1 3 - lalala | 1 Вот, здесь мне надо количество записей, где ВИДИМЫЙ = 1. Какой QUERY здесь нужен? |
Neo
SELECT COUNT( * ) FROM mytablename WHERE ВИДИМЫЙ = 1 |
Saruman
Понятно. А что возвращает этот запрос? Число или array? $a = DB->query("SELECT COUNT * FROM mytable WHERE visible = 1"); чему теперь равно $a? Добавлено через 11 минут: При этом: PHP код:
Получается это: resource(15) of type (mysql result) И что теперь? |
PHP код:
|
А я нашел вариант попроще.
$countcomms=$DB_site->query('SELECT COUNT(*) AS comms FROM neo_comments WHERE visible=0'); $newcomms=number_format($countcomms['comms']); |
Хотя, мой вариант не действует...
AlexXXsoft, спасибо :) |
$result = mysql_query("SELECT * FROM vklad WHERE id_user = '$user_id' and sostoyanie='0'") or die("Ошибка") ;
$num=mysql_num_rows($result); Это на мой взгляд самый удобный способ... а главное работает... |
ZoKeR
он медленнее чем count(*) Neo используй это: PHP код:
|
Намного бысрее или не существенно? А то если на 0,000001 сек быстрее то мне программу не надо переделывать...
|
намного быстрее, т.е. не происходит выборка всей таблицы, и не создается временная таблица, чтобы отсортировать результат)) быстрее эдак раз в 100, а если таблица огромная, то и раз в 1000 =)
|
Neo
если хочешь узнать, насколько у тебя хорошо написан запрос пользуйся командочкой explain практически все современные субд в той или иной степени понимают эту команду для сравнения: explain select * from table говорит, что просмотрены были все строки таблицы (около 10000) и выполнялся что-то около 5-6 секунд а explain select count(*) from table вообще не просматривает табличку и выполняется где-то 10^(-6) секунд :) вот... :-) надеюсь помог. |
кстати насчет EXPLAIN: у меня на сервере на
хостинге он выдает Access Denied .... =( на локалхосте поэксперементирвоал - да)) реально) не знал такого, спасиб, лови пятак) штука МНЕ ПОЛЕЗНАЯ. |
| Часовой пояс GMT +4, время: 10:46. |
Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.