How to use SUM IF() in MySQL without hard coding values in the query -


i have query uses sum if() cross-tab result set. in query have value sin sum if() hard coded. problem new values added database. there way write query without hard coding values in sum if()? here query:

select storeid, sum(if(marketsegmentid = 6, 1, 0)) 6, sum(if(marketsegmentid = 7, 1, 0)) 7, sum(if(marketsegmentid = 12, 1, 0)) 12, sum(if(marketsegmentid = 17, 1, 0)) 17, sum(if(marketsegmentid = 22, 1, 0)) 22, sum(if(marketsegmentid = 27, 1, 0)) 27, sum(if(marketsegmentid = 32, 1, 0)) 32, sum(if(marketsegmentid = 37, 1, 0)) 37, sum(if(marketsegmentid = 42, 1, 0)) 42, sum(if(marketsegmentid = 47, 1, 0)) 47, sum(if(marketsegmentid = 52, 1, 0)) 52, sum(if(marketsegmentid = 97, 1, 0)) 97, sum(if(marketsegmentid = 102, 1, 0)) 102, sum(if(marketsegmentid = 107, 1, 0)) 107, sum(if(marketsegmentid = 112, 1, 0)) 112, sum(if(marketsegmentid = 117, 1, 0)) 117, sum(if(marketsegmentid = 122, 1, 0)) 122, sum(if(marketsegmentid = 127, 1, 0)) 127, sum(if(marketsegmentid = 132, 1, 0)) 132, sum(if(marketsegmentid = 137, 1, 0)) 137, sum(if(marketsegmentid = 142, 1, 0)) 142 storemarketsegments group storeid;

the query used in report , results exported csv. 1's used flags in result set.

the table querying set this:

create table storemarketsegments(id int not null, marketsegmentid int not null); 

the marketsegments kept in separate table:

create table marketsegment(id int not null auto_increment, primary key(id), name varchar(45), description varchar(45));

any appreciated. not sure if there way write query without hard coding values , don't mind updating query in report whenever new marketsegments added thought check. thank in advance assistance.

you can return each count separate row, , filter needed in application layer:

select storeid, marketsegmentid, count(*) count storemarketsegments  group storeid, marketsegmentid; 

Comments

Popular posts from this blog

java - Play! framework 2.0: How to display multiple image? -

gmail - Is there any documentation for read-only access to the Google Contacts API? -

php - Controller/JToolBar not working in Joomla 2.5 -