2013-03-16 2 views
3

Таблица works(emNo, comNo, salary).Как сделать цикл sql

Я могу получить отличный comNo, используя «выбрать отличный comNo из работ ". Suppose it gives me a column with 5 rows. How do I count " emNo`» для каждой из этих строк?

+0

Вам нравится считать или суммировать значения? – davidbuzatto

+0

Нет, мне это не нужно – LynAs

+0

Хорошо, внимательно прочитав ваш вопрос, я понимаю, что вы хотите посчитать;) – davidbuzatto

ответ

6

Вы можете использовать GROUP BY для объединения по типу comNo.

SELECT 
    comNo, 
    count(emNo) 
FROM 
    works 
GROUP BY 
    comNo 

Это будет возвращать одну строку для каждого отдельного значения comNo вместе с подсчета записей в каждой группе.

Демо: http://www.sqlfiddle.com/#!2/4f5df/1

+1

Мне также нужно получить max в столбце count. как мне это получить? – LynAs

+1

Вы можете сортировать по 'count (emNo)', а затем взять первую строку, например, '.... ORDER BY count (emNo) DESC LIMIT 1': http://www.sqlfiddle.com/#!2/4f5df/17 – mellamokb

+1

.... ORDER BY COUNT (emNo) DESC это дает мне результат, но когда я добавить .... ORDER BY предел количества (emNo) DESC 1 я получаю ошибку (команда не правильно закончился) – LynAs