LINUX.ORG.RU

Изменить запрос

 , , ,


0

1

Привет!

По сути есть код SQL запроса, он адовый, как я понимаю. Надо его разбить на подзапросы, как это лучше сделать?

SELECT portfoliotr.Id
, portfoliotr.Name
, portfoliotr.EnglName
, portfolio.DocumentId
, refdescrvalue.Str1
, refdescrvalue.F AS DocumHTM
 FROM portfolio INNER JOIN portfoliotr
  ON portfolio.portfoliotr = portfoliotr.Id
   INNER JOIN refdescrvalue
    ON portfolio.DocumentId = refdescrvalue.Id
     WHERE portfoliotr.ParentId = 2001785

Так как, если это скормить ODBC PHP, Апач дает сегфолт ;-)

★★★★★

Всего то одно условие и два джойна, вполне заурядный вопрос.

А точно ли апач сегфолтится? Не сам PHP?

shooter93 ★★
()

Я сначала взял бы строчку, которая определяется условием «WHERE portfoliotr.ParentId = 2001785», организовал бы её первоочередную обработку, и добавлял бы к ней всё остальное. Гугл «join query result» даёт варианты.

Northsoft ★★
()
Ответ на: комментарий от shooter93

Апач + nginx, по логам сегфолтиться дочерний процесс Апач, ODBC к БД MS Access :-(

Twissel ★★★★★
() автор топика

Хотя я вангую, что проблема не столько в запросе (может даже совсем не в запросе), сколько в забагованном драйвере доступа к БД — MDBTools.

Twissel ★★★★★
() автор топика
Ответ на: комментарий от crutch_master

У заказчика была БД в Access, с ней нужно было работать, но соль в том, что с таким odbc в php оно нормально выполняло только запросы вида

SELECT * FROM table

Я им посоветовал экспортировать исходную БД в Мускуль и не морочить голову.

Тем более refdescrvalue.F это BLOB :-D

Twissel ★★★★★
() автор топика

Запрос простой, возможно падает изза odbc, надо через pdo Проверье напрямую через mysql клиент

ism ★★★
()
Ответ на: комментарий от ism

Я думал точно также.

Просто у меня не получилось сконвертировать БД в MySQL из-за больших BLOB-объектов в БД.

Или я что-то упустил?

Twissel ★★★★★
() автор топика
Ответ на: комментарий от Twissel

Это надо смотреть ошибки при запросах через mysql клиент, если все столбцы и таблицы есть должно работать

Проверьте реистр названий таблиц

ism ★★★
()
Ответ на: комментарий от ism

Спасибо за участие, но я все равно уже отказался от проекта, уж очень муторно.

Да и сделать быстро не получилось :-(

Twissel ★★★★★
() автор топика
Ответ на: комментарий от Twissel

Заказы извращенцев с access'ами, эеселями и макросами лучше вообще не смотреть, чтобы не травмировать себе психику.

crutch_master ★★★★★
()
Ответ на: комментарий от crutch_master

А вот это точно, но, как говорится — все приходит с опытом.

Twissel ★★★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.