powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / MySQL [игнор отключен] [закрыт для гостей] / ФИАС
7 сообщений из 7, страница 1 из 1
ФИАС
    #38993207
amasmind
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Есть база фиас в формате mysql
Вот тут http://wiki.gis-lab.info/w/ФИАС написан запрос получения полного адреса

-- сбор всех parentguid
WITH all_parents AS (
SELECT DISTINCT parentguid
FROM addrobj
WHERE (currstatus = 0) AND (parentguid IS NOT NULL)
)
-- выбор элементов самого нижнего уровня (не входящих в список all_parents)
-- и получение полного адреса
SELECT (make_full(aoid)).*
FROM addrobj
WHERE (currstatus = 0) AND (aoguid NOT IN (SELECT parentguid FROM all_parents))

пытаюсь запустить phpmyadmin этот sql запрос
выдает:
#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'all_parents AS ( SELECT DISTINCT parentguid FROM addrobj WHERE (curr' at line 2
...
Рейтинг: 0 / 0
ФИАС
    #38993209
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
amasmind,

В MySQL нет конструкции WITH ... AS (...).
В Оракле есть.
...
Рейтинг: 0 / 0
ФИАС
    #38993215
tanglir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да и вот эта конструкцияamasmindSELECT >>>(make_full(aoid)).*<<<больше на постгрес похожа, в мускле такого уж точно нет.
...
Рейтинг: 0 / 0
ФИАС
    #38993403
amasmind
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
tanglir,

А кто знает как запрос составить на mysql
Необходимо узнать полный адрес из таблицы addrobj из базы ФИАС?
...
Рейтинг: 0 / 0
ФИАС
    #38993441
tanglir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
amasmindА кто знает как запрос составить на mysqlТот, кто знает, как устроена функция make_full.
ЗЫ. Да и вообще непонятно, зачем в запросе то cte, если он идентичен простому
Код: sql
1.
2.
3.
SELECT (make_full(aoid)).*
 FROM addrobj
 WHERE (currstatus = 0) AND (parentguid IS NULL)
...
Рейтинг: 0 / 0
ФИАС
    #38994152
amasmind
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
tanglir,

А поподробней?
...
Рейтинг: 0 / 0
ФИАС
    #38994628
tanglir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
amasmind, а что "поподробней"? У вас явно определена пользовательская функция make_full, которая, как утверждает мой ХШ, выдаёт поля адреса (т.е. возвращает запись) по его ид. Да при этом у неё внутри скорее всего ещё и рекурсия. В мускле такие функции в принципе не предусмотрены, так что писать вам придётся всё с нуля. И не факт, что вообще что-то работоспособное получится.
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / MySQL [игнор отключен] [закрыт для гостей] / ФИАС
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]