|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
11.02.2008, 17:37 | #1 |
Пользователь
Регистрация: 11.02.2008
Сообщений: 13
|
Выборка уникальных значений
Здравствуйте программисты! Имеется таблица в которой один столбец к1 имеет уникальные значения, а второй к2 повторяющиеся. Нужно посчитать количество к1 для каждого значения к2. И вывести их. Но так чтобы в результирующем наборе были абсолютно все значения столбца к2, даже если количество какого-нибудь значения будет равно 0
|
11.02.2008, 19:42 | #2 | |
*
Старожил
Регистрация: 22.11.2006
Сообщений: 9,201
|
Цитата:
|
|
11.02.2008, 20:20 | #3 |
Пользователь
Регистрация: 11.02.2008
Сообщений: 13
|
Это значит количество значений столбца к1 может быть равно 0 и в этом случае должно вывести значение из столбца к2 и значение 0 для столбца к1. А у меня эти стоки вообще не выводятся, просто пропускаются.
|
11.02.2008, 20:29 | #4 |
Новичок
Джуниор
Регистрация: 18.01.2008
Сообщений: 1,720
|
Что есть "количество значений столбца к1 может быть равно 0" по-прежнему непонятно, но может поможет вот это:
SELECT ifnull(k1, 0) as k1, k2 FROM .........; |
11.02.2008, 21:07 | #5 |
Пользователь
Регистрация: 11.02.2008
Сообщений: 13
|
мне выает сообщение об ошибке "'Ifnull' - не признанное встроенное функциональное название(имя)."
"количество значений столбца к1 может быть равно 0" в смысле: select count(k1), k2 from..... group by k2 не выводит значения к2, если count(k1) = 0, т.е строчку пропускает. можно ли сделать так чтобы выводило: 0 и к2 |
11.02.2008, 21:48 | #6 | |||
*
Старожил
Регистрация: 22.11.2006
Сообщений: 9,201
|
Цитата:
Цитата:
Цитата:
А еще лучше, дабы отойти от тарабарщины, признавайтесь, что там у вас за информация в этих полях? Так может и поймем, что же на самом деле посчитать надобно... |
|||
11.02.2008, 22:14 | #7 |
Пользователь
Регистрация: 11.02.2008
Сообщений: 13
|
Вообщем есть 2 таблицы:
1. Category: CategoryID Category ---------- ------------ 1 Triller 2 Romantic 3 Horror 4 War 5 Sci-fi 6 Historical 7 New 2. Films: filmName categoryID ---------- ----------- The Dirty 4 On Golden 2 The Lion, 3 Nightmare 3 The Wide 5 Sense 6 Planet 4 The Maltese 1 15th Late 6 Soylent 5 One flew 3 Raging 1 The Life 1 Gone With 6 The Good 6 Мне нужно посчитать количество фильмов для каждой категории (Category). Но нужно чтобы в результирующем наборе присутствовали все имена категорий, независимо от того есть ли фильмы данной категории или нет. И если таких фильмов нет то вывести 0 |
11.02.2008, 22:25 | #8 |
Новичок
Джуниор
Регистрация: 18.01.2008
Сообщений: 1,720
|
Вот так не то?
select table1.Category, (select count(table2.filmName) from table2 where table2.categoryID = table1.CategoryID) as _count from table1 |
11.02.2008, 22:31 | #9 |
Пользователь
Регистрация: 11.02.2008
Сообщений: 13
|
Спасибо большое, B_N. Все получилось.
|
11.02.2008, 22:46 | #10 | |
*
Старожил
Регистрация: 22.11.2006
Сообщений: 9,201
|
Цитата:
И все потому, что никак не совпадает с вопросами, задававшимися первыми... |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
выборка нужных значений, вывод | AZaharov | Microsoft Office Excel | 19 | 17.10.2008 12:22 |
выборка предыдущих значений(курсы валют)) | alehandro | Microsoft Office Access | 1 | 29.04.2008 23:57 |
Выборка значений ячеек DBGrid | Македонский | БД в Delphi | 3 | 05.12.2007 07:10 |
выборка | Ser_gl | Microsoft Office Excel | 1 | 24.08.2007 20:49 |
Выборка | John_chek | БД в Delphi | 10 | 27.06.2007 08:43 |