Как посчитать количество одинаковых данных в столбце - PullRequest
1 голос
/ 21 апреля 2009

У меня есть таблица:

Id  Catg
1   cat01
2   cat01
3   cat01
1   cat02
2   cat02

теперь я хочу определить количество вхождений catg01 и catg02, как в этом примере, catg01 - 3 раза, а catg02 - 2 раза, я хочу посчитать это через запрос LINQ / simple db. Пожалуйста, обратите внимание: не может использовать Где пункт и жесткий код Catg01 / catg 02, так как не может n номер категории. Можно ли обнаружить? если да, то помогите.

Ответы [ 2 ]

6 голосов
/ 21 апреля 2009
SELECT Catg, COUNT(*)
FROM myTable GROUP BY Catg
5 голосов
/ 21 апреля 2009
Select Catg, Count(*) From TableName Group By CatG

Для версии LINQ. Представьте себе класс

    class Table
    {
        public int ID { get; set; }
        public string CatG { get; set; }
    } 

Тогда, если бы у вас был список этого класса, вы могли бы запросить его следующим образом

List<Table> y = new List<Table>();

y.Add(new Table() { ID = 1, CatG = "a" });
y.Add(new Table() { ID = 2, CatG = "a" });
y.Add(new Table() { ID = 3, CatG = "a" });
y.Add(new Table() { ID = 4, CatG = "b" });
y.Add(new Table() { ID = 5, CatG = "b" });


var query = y.GroupBy(table => table.CatG);

// Iterate over each IGrouping in the collection.
foreach (var item in query)
{
    Console.WriteLine("CatG: {0} Number of Items: {1}", item.Key, item.Count());
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...