sql - Google chart not picking up and displaying query -


i new using google charts , cannot figure out why query not displaying in google chart (table). table display query. query trying display doesn't bring table first query does.

i cannot seem understand problem is, because tested query several times , ran in sql server, , generate output looking for, doesn't display in table

working query:

select researcher.firstname + ' ' + researcher.surname [researcher_name], count(submission.submissionid) [number_of_submissions] submission inner join ((faculty inner join school on faculty.facultyid = school.[facultyid]) inner join (researcher inner join researchersubmission on researcher.researcherid = researchersubmission.researcherid) on school.schoolid = researcher.schoolid) on submission.submissionid = researchersubmission.submissionid group researcher.firstname, researcher.surname; 

this query doesn't display google chart. note: when run query in sql generator however, display results looking for:

select submission.title [title], submission.status [submission_status] submission inner join ((faculty inner join school on faculty.facultyid = school.[facultyid]) inner join (researcher inner join researchersubmission on researcher.researcherid = researchersubmission.researcherid) on school.schoolid = researcher.schoolid) on submission.submissionid = researchersubmission.submissionid group submission.status, submission.title; 

this entire code working query , have commented out non-working one:

@{                         var db = database.open("rmscontext");                          string rows = "";                            var query = ("select researcher.firstname + ' ' + researcher.surname [researcher_name], count(submission.submissionid) [number_of_submissions] submission inner join ((faculty inner join school on faculty.facultyid = school.[facultyid]) inner join (researcher inner join researchersubmission on researcher.researcherid = researchersubmission.researcherid) on school.schoolid = researcher.schoolid) on submission.submissionid = researchersubmission.submissionid group researcher.firstname, researcher.surname;");                          //var query = ("select submission.title [title], submission.status [submission_status] submission inner join ((faculty inner join school on faculty.facultyid = school.[facultyid]) inner join (researcher inner join researchersubmission on researcher.researcherid = researchersubmission.researcherid) on school.schoolid = researcher.schoolid) on submission.submissionid = researchersubmission.submissionid group submission.status, submission.title;");                           var appquery = db.query(query);                           list<string> rowslist = new list<string>();                          foreach (var item in appquery)                         {                             rowslist.add("['" + item.researcher_name + "', " + item.number_of_submissions + "]");                         };                         rows = string.join(", ", rowslist);                      }                       <script type="text/javascript" src="https://www.google.com/jsapi"></script>                     <script type="text/javascript">                         google.load("visualization", "1.1", { packages: ["table"] });                         google.setonloadcallback(drawtable);                           function drawtable() {                              var data = google.visualization.arraytodatatable([                               ['researcher name', 'number of submissions'],                                @html.raw(rows)]);                              var options = {                                 title: ''                             };                              var dashboard = new google.visualization.dashboard(document.queryselector('#dashboard'));                              var stringfilter = new google.visualization.controlwrapper({                                 controltype: 'stringfilter',                                 containerid: 'string_filter_div',                                 options: {                                     filtercolumnindex: 0                                 }                             });                              var table = new google.visualization.chartwrapper({                                 charttype: 'table',                                 containerid: 'table_div',                                 options: {                                     showrownumber: false                                 }                             });                              dashboard.bind([stringfilter], [table]);                             dashboard.draw(data);                         }                         google.load('visualization', '1', { packages: ['controls'], callback: drawtable });                     </script>                      <div id="dashboard">                         <div id="string_filter_div"></div>                         <div id="table_div"></div>                     </div> 

i feel missing simple, cannot rap head around it.

first of don't need group by , remove line group submission.status, submission.title; don't need group by , rather meant use row_number() function , joins total weird, modify them below

select * ( select submission.title [title],  submission.status [submission_status], row_number() over(partition submission.title order submission.title) rn submission  inner join researchersubmission on submission.submissionid = researchersubmission.submissionid inner join researcher on researcher.researcherid = researchersubmission.researcherid inner join school on school.schoolid = researcher.schoolid inner join faculty on faculty.facultyid = school.[facultyid] ) xx rn = 1; 

Comments