У меня есть вопрос, как отображать как родительский, так и дочерний: Вот мой пример: T1 является родительским элементом T2.Oracle/SQL - возвращает родительские и дочерние записи
ID create datetime(mm/dd/yyyy hh:mm:ss)
1 17-Apr-2016
2 18-Apr-2016
3 13-Apr-2016
4 15-Apr-2016
5 20-Apr-2016
6 19-Apr-2016
ID(FK) seq create datetime(mm/dd/yyyy hh:mm:ss)
1 6546 20-Apr-2016
1 5457 19-Apr-2016
1 4245 18-Apr-2016
1 0
2 5567 19-Apr-2016
2 0
3 2034 15-Apr-2016
3 1987 14-Apr-2016
3 1902 14-Apr-2016
3 1249 13-Apr-2016
3 0
4 2209 15-Apr-2016
4 2456 16-Apr-2016
4 3578 17-Apr-2016
4 3467 17-Apr-2016
4 4645 18-Apr-2016
4 5357 19-Apr-2016
4 0
5 0
6 0
T2 является дочерним T1, A и B являются текстовые значения, которые я хочу, чтобы отобразить на основе моего состояния, это не исходит из БД. Мое состояние заключено:
- Если Id не имеет времени на создание в T2/Seq = 0, идентификатор списка в качестве «A». например: 5,6 будет be A
- Если идентификатор имеет действующее seq/время создания в T2: . затем, получить максимум от createtime Т2
- Список обе строки - T1 как 'A' и T2 как 'B'
В идеале мой выход будет:
Id createtime Type
1 17-Apr-2016 A
1 20-Apr-2016 B
2 18-Apr-2016 A
2 19-Apr-2016 B
3 13-Apr-2016 A
3 15-Apr-2016 B
4 15-Apr-2016 A
4 15-Apr-2016 B
5 20-Apr-2016 A
6 19-Apr-2016 A
редактировать: я также необходимо добавить фильтр даты/времени T1.createdatetime между to_date (01-Apr-2016) и to_date (30-Apr-2016) или T2.createdatetime между to_date (01-Apr-2016) и to_date (30- Apr-2016)
Это, вероятно, НЕ то, что вы хотите; записи, созданные 30 апреля, НЕ будут выбраны, если у них есть компонент времени, отличный от 00:00:00, потому что to_date (30 апреля 2016 года) без показанного времени означает 00:00:00.Я показываю другое соглашение в своем решении. – mathguy