Select count 1 что означает

Select count 1 что означает

Other CW’s (that are all 100% wrong)

o indexes mean fast=true, if the optimizer doesn’t use them, the optimizer has
a bug

o indexes need to be rebuilt frequently or on a scheduled basis

o rebuilt indexes are faster, smaller and better

o all cursors in code should be explicit cursors, implicit cursors are slow and
bad

o select count(1) is better then select count(*)

o procedural code is faster then doing it in SQL

o adding more CPU will make our systems faster

o index space is not reused

o nologging stops all redo log from being generated on that segment

o the most selective fiedls must be first in an index

o you should commit frequently to save resources and time

o a cold backup is better then a hot backup9 ��� 03, 08:11����[255225] �������� | ���������� �������� ����������

Select count 1 что означает. message. Select count 1 что означает фото. Select count 1 что означает-message. картинка Select count 1 что означает. картинка messageRe: ��� count(1) ����� count(*)? [new]
pols
Member

������: ������������
���������: 443

���� �����-��. ����� �� ��� ����������� ����� �����, ���� ��� ����� �� �� �����������, � ������ ������� ���-�� �����?
9 ��� 03, 12:32����[255661] �������� | ���������� �������� ����������
Select count 1 что означает. message. Select count 1 что означает фото. Select count 1 что означает-message. картинка Select count 1 что означает. картинка messageRe: ��� count(1) ����� count(*)? [new]
Alexander Sobyanin
Member

������: ������
���������: 136

������ �� ������� ��� ��������� 🙂
���� �������� �������� 4-5��, ��� �������� �� ���������� �������.
������ ������ 9.2.0.2

9 ��� 03, 14:18����[255874] �������� | ���������� �������� ����������
Select count 1 что означает. message. Select count 1 что означает фото. Select count 1 что означает-message. картинка Select count 1 что означает. картинка messageRe: ��� count(1) ����� count(*)? [new]
Barracuda UA
Member

������: ������
���������: 2817

�� ����� ��� 8.1, �� ��������, � � 7.3 � 8.0 ��� �������� �������� ��� ����� �� ���� ����������.
9 ��� 03, 15:48����[256052] �������� | ���������� �������� ����������
Select count 1 что означает. message. Select count 1 что означает фото. Select count 1 что означает-message. картинка Select count 1 что означает. картинка messageRe: ��� count(1) ����� count(*)? [new]
X-Max
Member

������:
���������: 36

8.1.7.4
SQL> select count(1) from billing.VOIP_WHS_TRY_SESSION;

Execution Plan
———————————————————-
0 SELECT STATEMENT Optimizer=CHOOSE (Cost=262 Card=1)
1 0 SORT (AGGREGATE)
2 1 INDEX (FAST FULL SCAN) OF ‘VWL_CONNECT_DATE_IDX’ (NON-UN
IQUE) (Cost=262 Card=527780)

Statistics
———————————————————-
0 recursive calls
4 db block gets
3464 consistent gets
0 physical reads
0 redo size
369 bytes sent via SQL*Net to client
425 bytes received via SQL*Net from client
2 SQL*Net roundtrips to/from client
0 sorts (memory)
0 sorts (disk)
1 rows processed

SQL> select count(*) from billing.VOIP_WHS_TRY_SESSION;

Execution Plan
———————————————————-
0 SELECT STATEMENT Optimizer=CHOOSE (Cost=262 Card=1)
1 0 SORT (AGGREGATE)
2 1 INDEX (FAST FULL SCAN) OF ‘VWL_CONNECT_DATE_IDX’ (NON-UN
IQUE) (Cost=262 Card=527780)

Источник

Функция SQL COUNT ()

Функция COUNT ()

Функция SQL COUNT () возвращает количество строк в таблице, удовлетворяющих критериям, указанным в предложении WHERE. Он устанавливает количество строк или ненулевых значений столбцов.
COUNT () возвращает 0, если не было совпадающих строк.

Синтаксис:

Приведенный выше синтаксис является общим стандартным синтаксисом SQL 2003 ANSI. Это помогает понять, как используется функция SQL COUNT (). Но разные поставщики баз данных могут по-разному применять функцию COUNT ().

Ниже вы можете видеть, что MySQL, PostgreSQL и Microsoft SQL Server используют тот же синтаксис, что и приведенный выше. Но DB2 и Oracle немного отличаются.

В целом, вы можете использовать * или ALL или DISTINCT или какое-либо выражение вместе с COUNT, чтобы СЧИТАТЬ число строк по какому-либо условию или по всем строкам, в зависимости от аргументов, которые вы используете вместе с функцией COUNT ().

Поддержка СУБД: функция COUNT ()

СУБДкоманда
MySQLподдержанный
PostgreSQLподдержанный
SQL Serverподдержанный
оракулподдержанный

Синтаксис DB2 и Oracle:

Параметры:

названиеОписание
ВСЕОтносится ко всем значениям. ALL возвращает количество ненулевых значений.
DISTINCTИгнорируемые повторяющиеся значения и COUNT возвращает количество уникальных ненулевых значений.
выражениеВыражение состоит из одной константы, переменной, скалярной функции или имени столбца, а также может быть фрагментами запроса SQL, которые сравнивают значения с другими значениями. Выражение любого типа, кроме текста или изображения. Агрегатные функции и подзапросы не допускаются.
*СЧИТЫВАЕТ все строки в целевой таблице независимо от того, содержат ли они значения NULL.

Select count 1 что означает. sql count function. Select count 1 что означает фото. Select count 1 что означает-sql count function. картинка Select count 1 что означает. картинка sql count function

На последующих страницах мы обсудили, как применять COUNT () с различными предложениями SQL. Для этих приложений мы использовали Oracle 10g Express Edition.

Важная вещь о функции COUNT ():

Когда * используется для COUNT (), все записи (строки) считаются COUNTed, если некоторое содержимое NULL, но COUNT (column_name) не считает COUNT запись, если ее поле имеет значение NULL. Смотрите следующие примеры:

SQL COUNT строки в таблице

В следующем примере используется символ звездочки (*), за которым следует SQL COUNT (), который указывает все строки таблицы, даже если есть какое-либо значение NULL.

Пример таблицы: заказы

Чтобы получить количество строк в таблице ‘orders’, можно использовать следующую инструкцию SQL:

Код SQL:

Иллюстрированная презентация:

Select count 1 что означает. sql count1. Select count 1 что означает фото. Select count 1 что означает-sql count1. картинка Select count 1 что означает. картинка sql count1

Выберите COUNT (*) из нескольких таблиц

Следующий запрос COUNT количество строк из двух разных таблиц (здесь мы используем сотрудников и отделов) с помощью команды COUNT (*).

Код SQL:

SQL COUNT () с именем столбца

В этом примере функция SQL COUNT () исключает значения NULL для определенного столбца, если столбец указан в качестве аргумента в скобках функции COUNT.

Образец таблицы: listofitem

Чтобы получить количество строк в таблице listofitem со следующим условием:

1. COUNT количество строк для столбца «coname»

можно использовать следующий оператор SQL:

Код SQL:

Объясните:

Приведенный выше оператор СЧИТАЕТ те строки для столбца coname, которые не равны NULL.

Строки SQL COUNT с определенным пользователем заголовком столбца

1. результат должен отображаться с заголовком «Количество рядов»,

можно использовать следующий оператор SQL:

Код SQL:

SQL COUNT () с предложением where

Предложение WHERE может использоваться вместе с функцией SQL COUNT (). выбрать конкретные записи из таблицы в соответствии с заданным условием.

Пример:

Пример таблицы: заказы

1. ord_amount против заказа более 1500,

можно использовать следующий оператор SQL:

Применение функции COUNT ()

На последующих страницах мы обсудили, как применять COUNT () с различными предложениями SQL. Для этих приложений мы использовали Oracle 10g Express Edition.

Страница COUNT with DISTINCT обсуждает, как применять функцию COUNT с DISTINCT, а также обсуждает, как применять функцию COUNT с предложением ALL. В отличие от использования *, когда используется ALL, значения NULL не выбираются.

На странице COUNT HAVING рассказывается, как применить функцию COUNT с предложением HAVING, а также с HAVING и GROUP BY.

Страница COUNT с GROUP BY описывает, как применить функцию COUNT с GROUP BY в порядке возрастания и в порядке убывания.

Примечание. Выводы указанного оператора SQL, показанного здесь, взяты с использованием Oracle Database 10g Express Edition.

Вот слайд-презентация всех агрегатных функций.

Упражнения по SQL

Хотите улучшить вышеуказанную статью? Вносите свои заметки / комментарии / примеры через Disqus.

Предыдущая: Агрегатные функции
Следующая: COUNT с отличным

Источник

Мифы про Count(1) vs Count(*)

Select count 1 что означает. SQL Deep 3.02 5020 df713a. Select count 1 что означает фото. Select count 1 что означает-SQL Deep 3.02 5020 df713a. картинка Select count 1 что означает. картинка SQL Deep 3.02 5020 df713a

Многие наверняка знают про то, что если написать Count(*) по таблице, получите количество строк в таблице. Довольно часто я встречаю мнение, что лучше писать Count(1), так как это будет использовать меньше ресурсов сервера, потому что вы указываете скалярное выражение вместо всех полей таблицы.

Так что же использовать?

Возможно, когда-то для некоторых СУБД это было правдой и Count(1) экономил ресурсы, но не для SQL Server — даже в далёкой версии 2005 оба выражения работали одинаково эффективно.

Давайте в этом убедимся

Выполним запрос и посмотрим на актуальный план:

Select count 1 что означает. 1 20219 2eef3b. Select count 1 что означает фото. Select count 1 что означает-1 20219 2eef3b. картинка Select count 1 что означает. картинка 1 20219 2eef3bВидим, что план одинаковый и оптимизатор оценивает стоимость выполнения обоих запросов, как равную. Теперь посмотрим на часть по статистике ввода-вывода:

Select count 1 что означает. 2 20219 3854a0. Select count 1 что означает фото. Select count 1 что означает-2 20219 3854a0. картинка Select count 1 что означает. картинка 2 20219 3854a0

Количество сканирований и логических чтений для обоих запросов абсолютно идентично. Значит оба варианта равноценны по производительности для SQL Server. Обращаю внимание, что для других РСУБД результат может быть иной.

А вы используете в своем проекте Count(1)? Пишите в комментариях!

Источник

Определяем количество записей MySQL: пример кода

Select count 1 что означает. shutterstock 251287180. Select count 1 что означает фото. Select count 1 что означает-shutterstock 251287180. картинка Select count 1 что означает. картинка shutterstock 251287180

Функция COUNT()

Функция COUNT() возвращает количество записей в таблице, соответствующих заданному критерию.

Например, функция COUNT(*) возвращает общее количество записей в таблице:

Как посчитать количество записей и вывести на экран

Пример PHP+MySQL-кода для подсчета и вывода общего количества строк:

Использование функции COUNT() на примере

idname
1«Пломбир № 1»
1100% мороженое
1Эскимо № 1
2«Румба»
2«Фрутсок»

Задача: Нужно посчитать, сколько наименований мороженого содержится в каждой категории.

Решение этой задачи очевидно:

SELECT id, COUNT(*) FROM ice_cream GROUP BY id

Результат:

idcount
13
22

Если надо вывести населенный пункт и количество населенных пунктов в городе, то можно воспользоваться таким кодом:

Резюме

Select count 1 что означает. konstruktory saitov. Select count 1 что означает фото. Select count 1 что означает-konstruktory saitov. картинка Select count 1 что означает. картинка konstruktory saitov

Считайте на здоровье Select count 1 что означает. smile. Select count 1 что означает фото. Select count 1 что означает-smile. картинка Select count 1 что означает. картинка smile

А вот еще пример ребята, что бы вы не мучались. Так происходит подсчет сделок по обмену!

Есть таблица ORDER в которой отражаются заказы. В ORDER есть поле ITEM — наименование товара. Как одним запросом или вложенным запросом подсчитать какой товар заказывали больше всего? То есть узнать какое количество строк с одинаковым наименованием самое большое в таблице.

Всем заранее спасибо!

Как обычно сам и отвечаю:

SELECT item, COUNT(item) AS count FROM order GROUP BY item ORDER BY count DESC;

На выходе получаем количество вхождений каждого ITEM в порядке убывания.

Сорри, что сразу не мог ответить. Вы сделали все правильно.

SELECT item, COUNT(item) AS count FROM order GROUP BY item ORDER BY count DESC LIMIT 1;

SELECT item — это поле таблицы. В возвращаемом результате (а результатом будет таблица) поле будет иметь такое же имя.

COUNT(item) AS count

a AS b — в SQL значит «считать, что указаный объект/выражение a имеет имя b ».

Обычно пользуюсь таким:

Да, lukesky, клево. Спасибо за пример.

Если надо только посчитать количество записей, то использовать функцию mysql_num_rows наиболее оптимально.

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

3.5.1 Максимальное значение столбца

«Как определить наибольшее значение в столбце?»

SELECT MAX(article) AS article FROM shop

3.5.2 Строка, содержащая максимальное значение некоторого столбца

«Как определить номер, дилера и цену самого дорогого изделия?»

В ANSI SQL (и MySQL 4.1) это легко делается при помощи вложенного запроса:

SELECT article, dealer, price
FROM shop
WHERE price=(SELECT MAX(price) FROM shop)

В версиях MySQL до 4.1 такая задача выполняется в два этапа:

1. Следует получить максимальное значение цены из таблицы при помощи оператора SELECT.
2. Используя это значение, необходимо составить следующий запрос:

SELECT article, dealer, price
FROM shop
WHERE price=19.95

Существует еще одно решение: отсортировать все строки по убыванию цен и после этого получить первую строку, используя специальный оператор LIMIT:

SELECT article, dealer, price
FROM shop
ORDER BY price DESC
LIMIT 1

Примечание: если существует несколько самых дорогих изделий (например, каждое из них стоит 19,95), запрос, использующий LIMIT, возвращает лишь одно из них!
3.5.3 Максимальное значение столбца для группы

«Как определить наибольшую цену по каждому изделию?»

SELECT article, MAX(price) AS price
FROM shop
GROUP BY article

+———+——-+
| article | price |
+———+——-+
| 0001 | 3.99 |
| 0002 | 10.99 |
| 0003 | 1.69 |
| 0004 | 19.95 |
+———+——-+

Не обязательно вводить вторую переменную:
$result = mysql_query(«SELECT COUNT(*) FROM news»);
$result = mysql_num_rows($result);

У меня, ребята такой вопрос. Как организовать передачу переменной методом GET в джумле?

Это не связано с Джумлой. Вы допустили ошибку в синтаксисе передачи параметров метода GET.
index.php?option=com_content&view=article&id=13&Itemid=13 ? a=5

Вместо второго вопросительного знака нужно поставить амперсанд:
index.php?option=com_content&view=article&id=13&Itemid=13 & a=5

Спасибо за подсказку.

Пожалуйста Select count 1 что означает. smile. Select count 1 что означает фото. Select count 1 что означает-smile. картинка Select count 1 что означает. картинка smile

Имеются строки с записями:

`id``user_id`
12
23
33
44
54
64

Почему-то у меня не считает количество строк

Результат подсчета количества записей в каждой группе должен быть таким:

user_idколичество записей
21
32
43

Для определения количества записей в каждой группе — запрос правильный

$res = mysql_query(«SELECT user_id, COUNT(*) FROM table GROUP BY user_id»);

COUNT(*) — считает сколько всего записей. В комбинации с GROUP BY идет подсчет записей в каждой группе, а не количество групп.

А как тогда посчитать количество групп?

Запрос совершенно верен и полностью решает первоначально поставленную задачу. Если же задача поменялась, пожалуйста, уточните ее.

Спасибо, badevlad. Всегда рад твоим компетентным и исчерпывающим ответам.

Как пояснил fortresseo, данный запрос не подходит для решения, т. к. он выводит именно кол-во записей к каждой группе, а не кол-во групп.

И я не знаю как это сделать Select count 1 что означает. sad. Select count 1 что означает фото. Select count 1 что означает-sad. картинка Select count 1 что означает. картинка sad

Вроде так в MySQL можно:
SELECT COUNT(DISTINCT user_id) FROM table

Или вот так, чуть сложнее:
SELECT COUNT(*) FROM (SELECT DISTINCT user_id FROM table) a

О_о. Кланяюсь Вам в ноги до пола Select count 1 что означает. smile. Select count 1 что означает фото. Select count 1 что означает-smile. картинка Select count 1 что означает. картинка smile
и огромное Вам спасибо. Оба запроса работают как часы. Select count 1 что означает. smile. Select count 1 что означает фото. Select count 1 что означает-smile. картинка Select count 1 что означает. картинка smile

Присоденяюсь с благодарностью за все подсказки Бадевлада в подсчете записей MySQL с уникальными значениями id.

Вы можете подсказать как вычислить разницу между датами в днях? Допустим есть дата начала и дата окончания проекта. Сколько дней занял проект?

Примерно вот так должно быть…

Подскажите пожалуйста! не знаю как решить… ничего не получается…

У меня на главной выводятся статьи. Пусть будет 3 статьи.
У каждой статьи есть ссылка на страничку с подробным описанием.
Пусть будет так: /articles-item.php?id=7&table=blogs_users

id post
1 7
2 7
3 4
4 2
5 7
6 4

Должен вывести. На главной возле каждой статьи должен показать сколько Комментов с таким же параметром что и ID Таблицы. если post =7 значит он относиться к таблице 7.

Очень помог код. Я использовал вариант с условием где название поля равнялось конкретному значению. Таким образом подсчитал кол-во записей с этим значением. Мне это было нужно, чтобы на сайте, в спец. предложения, нельзя было добавлять одинаковый товар дважды. Теперь всё ок.

Классно. Я очень рад, что вам это пригодилось.

SELECT COUNT(*) FROM таблица WHERE autor=’никнейм’

точнее:
SELECT COUNT(*) AS postuser FROM таблица WHERE autor=’никнейм’

и вот postuser и будет количество.

нужно посчитать количество одинаковых значений в каждом из двух столбцов, а потом вывести просто в цифрах

и сравнить эти два столбца

$per=(«Новочеркасский электровозостроительный завод»);
$per1=(«Луганский тепловозостроительный завод»);
$per2=(«Ишимский механический завод»);
$per3=(«Кандалакшский опытный машиностроительный»);
$per4=(«Коломенский завод»);
$per5=(«Пенза Дизельмаш»);
$per6=(«Завод им. Малышева»);
$per7=(«Волжский дизель»);
$per8=(«244»);
$per9=(«246»);
$per10=(«344»);
$per11=(«346»);
$per12=(«444»);
$per13=(«446»);

if ($total>$total2) <
echo («zavod»);

> else
echo («brig»);

во втором запросе что то не так, потому что он выводит общее количество строк, а в первом как надо, повторяющиеся

Помогите пожалуйста сделать как у вас на сайте и на других вывод количества комментарий в статье (39 комментариев:)

Задача решена, извените за неудобстава.

Статья взята из про. программирование на PHP, Дениса Колисниченко? Select count 1 что означает. wink. Select count 1 что означает фото. Select count 1 что означает-wink. картинка Select count 1 что означает. картинка wink

Хе-хе, нет. Она писалась в живую. Потом дополнялась и дорабатывалась. В самом начале она состояла из одного примера. Мой друг, программист, Денис Балыкин спросил: «Почему только один пример?».

Спасибо большое этому сайту! здесь нашел много интерестного, наверно самое гланая особеность этого сайта в том что здесь все с примерами и подробным описанием! еще раз спасибо большое автору сайта

Пожалуйста. Если нравится, то нажимайте +1 и Лайк. Я буду за это благодарен.

Здравсвтуйте, помогите реализовать следующее:
есть одинаковые ряды с разным количеством повторов, среди них нужно показать те, количество повторов равно 2.

По жтому запросу «SELECT number, COUNT(number) AS count FROM tab_data GROUP BY number» получаю:

number count
2934234 28
2934235 5
2934236 42
2934238 2
2934239 3
2934240 2
2934247 2
2934248 2
2934249 2
2934250 2
2934251 9
2934252 2
2934253 2
2934256 3

А именно с count 2 не могу вытянуть.

Могу предложить только это:

Пол кода при вставке стирается((( Админы, что за?

Здравствуйте!
Кажется, всё понятно после вашего урока, ан не получается, прошу помоши.
Есть три таблицы:
таблица разделов parts с полями: id | part (плодовые, овощи, ягоды …)
таблица категорий cats с полями: id | id_part | cat (яблоня, картофель, клубника…)
таблица статей data с полями: id | id_cat | text | остальные поля.
Естественно, `cats`.`id_part`=`parts`.`id` и `data`.`id_cat`=`cats`.`id`
Вот мой запрос, выводящий в меню разделы и категории, причем пустые категории он не выводит, это так и надо:

Пожалуйста, подскажите, как изменить запрос и получить переменную $count количества статей, соответствующих нужной категории.
Спасибо.

Вот какой вопрос.
SQL-запросы в visual foxpro. условие вывести количество изданий на карточке каждого читателя. объяснили так

SELECT CNT(num), name1+’ ‘+LEFT(name2,1)+’.’+LEFT(name3,1)
FROM fond, abonent
WHERE fond.num=abonent.num
GROUP by num,name1

не работает. запросы мы изучали мельком, потому сама не могу понять.

LOCAL cSQL, cKod
SELECT 2
cKod=ALLTRIM(STR(num))

cSQL=»SELECT COUNT(fond.num), abonent.name1+’ ‘+LEFT(abonent.name2,1)+’.’+LEFT(abonent.name3,1)+’.’ » + ;
» FROM base3!fond, base!abonent» + ;
» WHERE fond.num = abonent.num » + ;
» GROUP BY num, name1 »

WITH thisform.Grid2
.RecordSource=’ ‘
.RecordSource=cSQL
ENDWITH

Задача в SQL. Есть таблица с колонками UserID (имя юзера), TimeUsers (указывает время проведенное на сайте), Datetime (день в который юзер был на сайте), UserApp (устройство с которого заходил юзер). За один день юзер мог заходить на сайт несколько раз с разным временем прибывания.
Нужно вывести по каждому юзеру суммарное время за конкретный день и с кого устройства заходил юзер.
Спасибо!

Сначала вытаскиваем устройства конкретного юзера за день:

SELECT `UserApp` FROM `tablename` WHERE `UserID` = ‘нужное нам имя юзера’ AND `Datetime`= ‘нужная нам дата’

Далее суммируем время посещения:

SELECT `TimeUsers` FROM `tablename` WHERE `UserID` = ‘нужное нам имя юзера’ AND `Datetime`= ‘нужная нам дата’ GROUP BY `TimeUsers`

Здравствуйте!
Помогите решить следующую задачу.
имеется 2 таблицы:
id1 descript
1 descr1
2 descr2
3 desct3

id1 id2
1 1
1 2
2 3
2 4
2 5

Требуется составить запрос в SQL, который бы выводил

id1 descript count
1 descr1 2
2 descr2 3

count — количество включений id1 во 2-ю таблицу.

Здравствуйте. Завела в тупик следующая задача, помогите разобраться.

Есть 2 таблицы:
-posts [id, title, text]
-comments [comment_id, post_id, text, published]

Необходимо вывести все записи из таблицы post а так же количество опубликованных (т.е. published = TRUE) комментариев.

SELECT p.*, c.*, COUNT(*) AS `counts` FROM `posts` AS p, `comments` AS c WHERE c.published = 1 AND p.id = c.post_id GROUP BY c.post_id

всем пивет нужна помощь, есть таблица
id name_hotel zvezd
1 название1 5
2 название 2 4
3 название 3 5
нужно сделать чтобы считалось
5 звезд столько то ( тобишь чтоб вывелось 2)
4 звезды столько то (а здесь 1)

SELECT `zvezd`, COUNT(*) AS `counts` FROM `tablename` GROUP BY `zvezd`

Спасибо, смог вывести количество комментариев к материалу Select count 1 что означает. smile. Select count 1 что означает фото. Select count 1 что означает-smile. картинка Select count 1 что означает. картинка smile

Таблица такая
lgid
18
18
7
18
7
7
12
12
как в массив вывести
18=>3
7=>3
12=>2
Поможете? Заранее спасибо

Спасибо. Четко, быстро и по смыслу.
Понадобился, так этот сниппет прямо скопировал, имя таблицы заменил и вывел себе в форме.

Я в ступоре с этим COUNT:
SELECT *, COUNT(`id`) AS `countid` FROM `material` WHERE `company` = ’23’ ORDER BY `id` DESC
COUNT считает хорошо, но склеивает записи
А мне хочется и все эти записи выбрать и вывести и их общее количество получить.
Пытался обмануть:
SELECT *, COUNT(`id`) AS `countid` FROM `material` WHERE `company` = ’23’ GROUP BY `id` ORDER BY `id` DESC
тогда напротив каждой записи единичка ))))

А нельзя чтоли просто посчитать кол-во выбранных записей?

А можно и просто после выбора записей из базы просто посчитать их php функцией count():
$totalRows = count($list);
Это на скорую руку написал, можно и оптимизировать и упростить, но принцип такой)

Нет, просто не получится:

Ну может тогда JOIN LEFT или что то вроде этого?

Здравствуйте.
Есть база «uchot», и таблица «pacient»

Id first_name last_name date

1 Степан Иванов 12/03/ 2014
2 Смирнов 12/03/2014
3 Вадим Попов 13/03/2014
4 Денис Новиков 14/03/2014

Как видно из таблицы в 2 строке не заполнен столбец «data_outcoming»
Нужно составить запрос к MYSQL
Вопрос:1. Как подсчитать количество строк у которых заполнен столбец » first_name»?
Вопрос: 2. Как подсчитать количество строк у которых незаполнен столбец » first_name»?

Вот структура базы
CREATE TABLE IF NOT EXISTS `patient` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`first_name` varchar(255) NOT NULL,
`last_name` varchar(255) NOT NULL,
`date` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=3 ;

Такой вариант не подходит!
$sql=’SELECT COUNT (*) as count FROM `pacient` WHERE `first_name`IS NULL’;
$res=mysql_query($sql);
$counts=mysql_fetch_assoc($res);
$count=$counts[‘count’];
echo ‘ ‘.$count.’ ‘;

Поле first_name это строка (varchar) — по этому просто смотрим пустая она или нет…

Спасибо за ответ.
А как выводить число заполненных и не заполненных строк,
и как будет выглядить если строка не (varcher) а (data)?

как будет выглядить если строка не (varcher) а (data)? В смысле поле `date` из вашего примера?

Нет. Там «date» автозаполняемое поле, просто если там будет вводится дата?
Вот мой index.php
Добавить нового пациента

Нужно выводить число не заполненых полей «phone» и заполненных полей «phone»
. По этому запросу ничего не выводить

Здравствуйте, такой вопрос, имеются три таблицы:
1) people (id, name, age, height) — название таблицы (столбцы в ней) — люди
2) cities (id, name) — города
3) visits (id, person_id, city_id, date) — посещения
person_id — внешний ключ к таблице people
city_id — внешний ключ к таблице cities

Вопрос заключается в следующем: нужно вычислить человека совершившего наибольшее кол-во поездок.
Нужно объединить таблицы и вычислить одним запросом, подскажите как?
Из выше приведенных комментариев использовал:
SELECT name, COUNT(person_id) AS count FROM `people`, `visits` GROUP BY person_id ORDER BY count DESC LIMIT 1;
Вроде бы эта команды работает, но она выдает странные результаты (в моем случае):
(name) Катя, (count) 1188
Это наврятли может быть верным, так как в visits всего 500 записей

По идее должно быть так:
SELECT p.name, COUNT(v.person_id) AS count FROM people AS p, visits AS v WHERE v.person_id = p.id ORDER BY count DESC

Здравствуйте, есть 2 таблицы users и uchet. Они связанны между собой по (users) id и (uchet) users_id. Как будет выглядеть запрос для вывода количества данных из таблицы uchet в котором поле «bolezn» равно «Грип» и соотвественно вывод всег юзеров из таблизы users у которых есть больезнь «грип»?

Очень просто:
SELECT u.id AS userid, u.*, uc.id AS uchetid, uc.* FROM users AS u, uchet AS uc WHERE uc.bolezn = ‘Грип’ AND u.id = uc.users_id
Суть еще в том, чтоб небыло одинаковых названий полей.

По идее должно быть так:
SELECT p.name, COUNT(v.person_id) AS count FROM people AS p, visits AS v WHERE v.person_id = p.id ORDER BY count DESC LIMIT 0, 1

Здравствуйте, Есть у меня база в каторой строка «date» формат DATE добавлаю туда дату с помощю
,

Дело втом что выводится дата типа 2014-09-01, как можно на этом примере конвертировать дату на 01-09-2014, буду благодарен за помощ.

Имеются 2 таблицы
CREATE TABLE IF NOT EXISTS `cw_users` (
`userid` int(25) NOT NULL AUTO_INCREMENT,
`first_name` varchar(25) CHARACTER SET utf8 NOT NULL DEFAULT »,
`last_name` varchar(25) CHARACTER SET utf8 NOT NULL DEFAULT »,
`email_address` varchar(50) CHARACTER SET utf8 NOT NULL DEFAULT »,
`username` varchar(25) CHARACTER SET utf8 NOT NULL DEFAULT »,
`password` varchar(255) CHARACTER SET utf8 NOT NULL DEFAULT »,
`info` varchar(50) CHARACTER SET utf8 NOT NULL,
`last_loggedin` varchar(100) CHARACTER SET utf8 NOT NULL DEFAULT ‘never’,
`user_level` enum(‘1′,’2′,’3′,’4′,’5’) CHARACTER SET utf8 NOT NULL DEFAULT ‘1’,
`forgot` varchar(100) CHARACTER SET utf8 DEFAULT NULL,
`status` enum(‘live’,’suspended’,’pending’) CHARACTER SET utf8 NOT NULL DEFAULT ‘live’,
PRIMARY KEY (`userid`)
)

CREATE TABLE IF NOT EXISTS `reception` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`patient_userid` int(11) NOT NULL,
`doctor_name` text NOT NULL,
`fill_date` date NOT NULL,
`send_place` text NOT NULL,
`cart` text NOT NULL,
`date_re_out_select` text NOT NULL,
`date_in` text NOT NULL,
`recomended` text NOT NULL,
`director_type` text NOT NULL,
`director_name` text NOT NULL,
`date` text NOT NULL,
PRIMARY KEY (`id`)
)

таблица `reception` связана с таблицей `cw_users` соотвественно по `patient_userid` и `userid`.
Юзер, зарегистрировавшийся в таблице cw_users может добавлять материалы в таблицу `reception`,
Задача создать запрос, чтобы вывелся список юзеров зарегистрированных в таблице `cw_users` и перед ними было бы КОЛИЧЕСТВО (число) материалов, которые они добавили в таблицу `reсeption`. Ни как не могу сформировать запрос, помогите пожалуйста конкретным примером.

SELECT userid, first_name, last_name, COUNT(id)
FROM cw_users
JOIN reception ON patient_userid = userid
GROUP BY id

Как-то так. Без проверки и гарантии работоспособности. Плюс я не знаю, так ли все это в MySQL.

Почти. Одна поправка:

SELECT userid, first_name, last_name, COUNT(id) as count
FROM test_cw_users
JOIN test_reception ON patient_userid = userid
GROUP BY patient_userid

Заместо GROUP BY id нужно GROUP BY patient_userid

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *