mysql - Getting all items without open end date -
i need solve following problem using (my)sql, given example table:
id | item | start      | end 1  | 100  | 2015-01-01 | 2015-01-14 2  | 100  | 2015-01-01 | null 3  | 101  | 2015-03-01 | 2015-04-15 4  | 101  | 2015-04-17 | 2015-04-22 5  | 101  | 2015-04-27 | 2015-05-11   i need query gives me items there no open end date. above i'd expect 101.
i tried group , sub-selects didn't show expected. on this?
you can using group by , having:
select item example group item having count(end) = count(*);   count() column names counts number of non-null values.  if equal number of rows, no values null.
you use:
having sum(end null) = 0   edit:
i should add following might faster, assuming have right indexes , table items:
select i.item items not exists (select 1                   example e                   i.item = e.item , e.end null                  );   for performance, want index on example(item, end).
Comments
Post a Comment