sql - MySQL Sum and case -


i'm creating query wherein count how many awards applicant have. far have this:

select  case when award1 not null 1 else 0 end +  case when award2 not null 1 else 0 end +  case when award3 not null 1 else 0 end +  case when award4 not null 1 else 0 end  summedcolumn resume, person e_status = 'applicant'  , person.id_no 'x' , resume.id_no 'x'  table:person                         values id_no(varchar, primary)              x f_name(varchar)                      fasa l_name(varchar)                      bel m_name(varchar)                      drake resume_id(varchar)                   res01  table: resume                        value resume_id(varchar, primary)          res01 id_no(varchar)                       x award1(varchar)                      suma cum laude award2(varchar)                      null award3(varchar)                      null award4(varchar)                      null past_position1(varchar)              hr manager past_position2(varchar)              null  output of query: 4 

when ran code returned value of 4 award2, award3 , award4 null. code suppose return value of 1.

here of table:

you didn't join 2 tables, making cross join between resume , person tables.

find key relates person resume, , equals them together:

select  case when award1 not null 1 else 0 end +  case when award2 not null 1 else 0 end +  case when award3 not null 1 else 0 end +  case when award4 not null 1 else 0 end  summedcolumn resume      inner join person         on resume.resume_id = person.resume_id e_status = 'applicant'  , person.id_no 'x' , resume.id_no 'x' 

Comments

Popular posts from this blog

How to provide Authorization & Authentication using Asp.net, C#? -

toolbar - How to add link to user registration inside toobar in admin joomla 3 custom component -

How to use Authorization & Authentication in Asp.net, C#? -