2

I am new to sqlite for iOS. I am making an app in which user will store the client names in the database according to the day they're appointed.

id Day         Client1    Client2    Client3    Client4    Client5    Client6
0  Monday      Nitin      Vijay      Akshay     Ajit       Sahil      Ravi
1  Tuesday     Ravi       Akshay     Nitin      Sahil      Vijay      Ajit    
2  Wednesday   Vijay      Nitin      Vijay      Akshay     Ravi       Ajit
3  Thursday    Akshay     Ajit       Nitin      Ravi       Sahil      Vijay
4  Friday      Nitin      Nitin      Akshay     Sahil      Ravi       Vijay

Some clients will be repeated daily, how to count number of times each client has met me and save it to int every day.

eg.

Monday
Nitin = 1
Vijay = 1
Akshay = 1
Ajit = 1
Sahil = 1
Ravi = 1

This should be updated daily at 12:00AM and if I request database to show the count on Tuesday, it should come with (Count on Monday + Count on Tuesday)

Tuesday
Nitin = 2
Vijay = 2
Akshay = 2
Ajit = 2
Sahil = 2
Ravi = 2

How should I achieve it?

4

1 回答 1

1

假设您已使用如下表对数据库进行规范化:

Days:  id  Day
       0   Monday
       1   Tuesday
       2   Wednesday
       ...

Appointments:  DayID  Client
               0      Nitin
               0      Vijay
               0      Akshay
               0      Ajit
               0      Sahil
               0      Ravi
               1      Ravi
               1      Akshay
               1      Nitin
               ...

那么您可以简单地计算每个客户的记录:

SELECT Client, COUNT(*)
FROM Appointments
WHERE DayID BETWEEN 0 AND 1  -- Monday and Tuesday
GROUP BY Client
于 2013-10-23T21:01:24.887 回答