Неправильно работает WHERE внутри VRT

Ответить
Аватара пользователя
Denis Rykov
Гуру
Сообщения: 3376
Зарегистрирован: 11 апр 2008, 21:09
Репутация: 529
Ваше звание: Author
Контактная информация:

Неправильно работает WHERE внутри VRT

Сообщение Denis Rykov » 12 ноя 2015, 08:30

Есть CSV-файл test.csv следующего содержания:

Код: Выделить всё

number,regcode,regname,index,country,region,subregion,city,street,house,lat,lon,level,wkt
000028198,1145,г.Москва,,,,, МОСКВА,ПРОФСОЮЗНАЯ,,55.621147,37.507687,housenumber,
Составляем для него VRT:

Код: Выделить всё

<OGRVRTDataSource>
    <OGRVRTLayer name="test">
        <LayerSRS>WGS84</LayerSRS>
        <GeometryType>wkbPoint</GeometryType>
        <GeometryField encoding="PointFromColumns" x="lon" y="lat"/>
        <SrcDataSource>test.csv</SrcDataSource>
        <SrcSQL>SELECT * from test WHERE level = 'housenumber'</SrcSQL>
    </OGRVRTLayer>
</OGRVRTDataSource>
Проверяем количество объектов:

Код: Выделить всё

$ ogrinfo -al -ro test.vrt | grep "Feature Count"
Feature Count: 1
Теперь заменим housenumber на street в csv и vrt:

Код: Выделить всё

number,regcode,regname,index,country,region,subregion,city,street,house,lat,lon,level,wkt
000028198,1145,г.Москва,,,,, МОСКВА,ПРОФСОЮЗНАЯ,,55.621147,37.507687,street,

Код: Выделить всё

<OGRVRTDataSource>
    <OGRVRTLayer name="test">
        <LayerSRS>WGS84</LayerSRS>
        <GeometryType>wkbPoint</GeometryType>
        <GeometryField encoding="PointFromColumns" x="lon" y="lat"/>
        <SrcDataSource>test.csv</SrcDataSource>
        <SrcSQL>SELECT * from test WHERE level = 'street'</SrcSQL>
    </OGRVRTLayer>
</OGRVRTDataSource>
Проверяем количество объектов:

Код: Выделить всё

$ ogrinfo -al -ro test.vrt | grep "Feature Count"
Feature Count: 0
Не понятно почему получаем 0 вместо 1. Похоже на какой-то баг. У кого-нибудь воспроизводится?
Spatial is now, more than ever, just another column- The Geometry Column.

Аватара пользователя
Дмитрий Барышников
Гуру
Сообщения: 2572
Зарегистрирован: 17 ноя 2009, 19:17
Репутация: 261
Откуда: Москва

Re: Неправильно работает WHERE внутри VRT

Сообщение Дмитрий Барышников » 12 ноя 2015, 10:30

У меня не воспроизводится

Код: Выделить всё

$ ogrinfo --version
GDAL 2.1.0dev, released 2015/99/99

Аватара пользователя
Denis Rykov
Гуру
Сообщения: 3376
Зарегистрирован: 11 апр 2008, 21:09
Репутация: 529
Ваше звание: Author
Контактная информация:

Re: Неправильно работает WHERE внутри VRT

Сообщение Denis Rykov » 12 ноя 2015, 10:48

Ну у меня конечно же не транк, но вроде и не старый GDAL:

Код: Выделить всё

ogrinfo --version
GDAL 1.11.2, released 2015/02/10
Spatial is now, more than ever, just another column- The Geometry Column.

KolesovDmitry
Гуру
Сообщения: 810
Зарегистрирован: 22 авг 2007, 14:58
Репутация: 123
Откуда: Казань

Re: Неправильно работает WHERE внутри VRT

Сообщение KolesovDmitry » 12 ноя 2015, 10:55

У меня воспроизводится.
gdalinfo --version
GDAL 1.11.2, released 2015/02/10

Аватара пользователя
Дмитрий Барышников
Гуру
Сообщения: 2572
Зарегистрирован: 17 ноя 2009, 19:17
Репутация: 261
Откуда: Москва

Re: Неправильно работает WHERE внутри VRT

Сообщение Дмитрий Барышников » 12 ноя 2015, 11:49

Для первой ветки неплохо на последнем проверить тот который 1.11.3 от сентября 2015.
Кстати на 2.0 тоже воспроизводится.

Аватара пользователя
Denis Rykov
Гуру
Сообщения: 3376
Зарегистрирован: 11 апр 2008, 21:09
Репутация: 529
Ваше звание: Author
Контактная информация:

Re: Неправильно работает WHERE внутри VRT

Сообщение Denis Rykov » 12 ноя 2015, 11:52

Проверил на 1.11.3 - тоже не работает, оставил тикет #6216.
Spatial is now, more than ever, just another column- The Geometry Column.

gamm
Гуру
Сообщения: 4056
Зарегистрирован: 15 окт 2010, 08:33
Репутация: 1054
Ваше звание: программист
Откуда: Казань

Re: Неправильно работает WHERE внутри VRT

Сообщение gamm » 12 ноя 2015, 12:00

А это нормально, что из точки хотят получить линию?

[ Сообщение с мобильного устройства ]

Аватара пользователя
Denis Rykov
Гуру
Сообщения: 3376
Зарегистрирован: 11 апр 2008, 21:09
Репутация: 529
Ваше звание: Author
Контактная информация:

Re: Неправильно работает WHERE внутри VRT

Сообщение Denis Rykov » 12 ноя 2015, 12:05

Не понял, откуда вы про линию взяли?
Spatial is now, more than ever, just another column- The Geometry Column.

Ariki
Гуру
Сообщения: 731
Зарегистрирован: 12 янв 2011, 22:40
Репутация: 304
Ваше звание:

Re: Неправильно работает WHERE внутри VRT

Сообщение Ariki » 12 ноя 2015, 12:07

Для версий 1.x это известная проблема, странно, что в 2.0 воспроизводится

Ariki
Гуру
Сообщения: 731
Зарегистрирован: 12 янв 2011, 22:40
Репутация: 304
Ваше звание:

Re: Неправильно работает WHERE внутри VRT

Сообщение Ariki » 12 ноя 2015, 12:15

Проверил у себя - не подтверждаю, всё работает как надо. GDAL 2.0.1, released 2015/09/15

gamm
Гуру
Сообщения: 4056
Зарегистрирован: 15 окт 2010, 08:33
Репутация: 1054
Ваше звание: программист
Откуда: Казань

Re: Неправильно работает WHERE внутри VRT

Сообщение gamm » 12 ноя 2015, 13:27

Denis Rykov писал(а):Не понял, откуда вы про линию взяли?
промахнулся - отправил не то, и не туда ...

Ответить

Вернуться в «GDAL/OGR»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 3 гостя