Для базы данных доступа, которая выглядит следующим образом:
(Все текстовые поля)
Co1 Co2 Co3 Co4
A k t N1
B k t N2
A m t N3
B k z N4
A k z N5
C m t N6
C k z N7
C k t N8
A k t N9
C m t N10
Мне нужно создать какие-то отчеты, которые бы делали следующее:
Результаты должны выбрать строки:
- Сначала заказано Co1
- затем заказывается Co2
- включает только данные, где Co3 = t или r
- когда Co3 НЕ t или r, тогда все остальные строки с предшествующим C04 где
Co1 и Co2 были такими же, как и в текущей строке, также исключены
1,2 и 3 чрезвычайно легко сделать (пункты Order by и Where соответственно), но
можно # 4 сделать в доступе SQL?
Если это невозможно, я сделаю небольшое приложение на C #, которое просматривает данные, но я чувствую это
должно быть возможно сделать в SQL, и если это возможно, это определенно будет намного лучше.
Фактический запрос и база данных более сложны, но я застрял в # 4.
В примере, который я привел, результат будет:
A m t N3
A k t N9
C m t N6
C m t N10
C k t N8
Я считаю, что это охватывает все возможные случаи.
Точность, мы используем четвертый столбец (C4 в этом примере), чтобы определить порядок
но это текстовое поле с символами и цифрами в нем.
Поле представляет собой букву, за которой следуют 2 цифры: A01, A02, .. A99, B01 и т. Д.
Точность № 2, я не виноват в этом дизайне базы данных. : P
Так, для гуру SQL среди нас, это может быть сделано в доступе SQL? Как?
Большое спасибо за любую помощь, которую вы можете оказать.