За чистый и ясный код!

Статьи на тему программирования под веб, используя PHP, MySQL, Jquery и многое другое
Просмотр категории - Kohana

Конструирование запроса с использование JOIN в Kohana3

Январь17
Укрась свой сад с помощью разных фигурок, например с помощью фигуры рыбы.

Предстояло мне сформировать запрос с использование 2-х таблиц связанных с помощью конструкции JOIN. Беда была в том, что таблицы имели префикс (test_), который был указан в конфиге БД и к созданным алиасам, указанных таблиц, цеплялся префикс таблицы.

Ниже приведен запрос который был после использования такой конструкции:

DB::select()
                        ->from(array('context_adv_theme', 't'))
                        ->join(array('context_adv', 'a'), 'inner')
                        ->on('t.id', '=', 'a.theme_id')
                        ->where('fl', '=' ,1);
SELECT * FROM `test_context_adv_theme` AS `t`
INNER JOIN `test_context_adv` AS `a` ON (`test_t`.id = `test_a`.theme_id)
WHERE `fl` = 1

как видно в конструкции ON получалась такая запись (`test_t`.id = `test_a`.theme_id), вместо (`t`.id = `a`.theme_id)

для того, чтобы было (`t`.id = `a`.theme_id) необходимо ставить алиасы таблицы в конструкторе запроса ->ON в двойные кавычки, как это показано на нижнем примере:

DB::select()
                        ->from(array('context_adv_theme', 't'))
                        ->join(array('context_adv', 'a'), 'inner')
                        ->on('"t".id', '=', '"a".theme_id')
                        ->where('fl', '=' ,1);
SELECT * FROM `test_context_adv_theme` AS `t`
INNER JOIN `test_context_adv` AS `a` ON (`t`.id = `a`.theme_id)
WHERE `fl` = 1

В помощь тебе, юзер!!!

Статья просмотренна 40773 раз, зашло посетителей 14008

Итоги уходящего 2009

Декабрь30
Отличная поисковая оптимизация сайта с помощью уникального ресурса.

До конца года осталось почти сутки и половинка, я думаю самое время подвести итог уходящего 2009-го.

Начну по порядку с начала года

  1. В феврале первый раз с семьёй увидели свою новую квартиру
  2. Устроился на работу в хорошую фирму Стелла Системз, группа Диалог
  3. Начал изучать два фреймверка на PHP — ZendFramework и Kohana
  4. Начал писать различные статьи, понял что мне это нравится и …
  5. Открыл свой блог, правда времени пипец как мало на его развитие.
  6. Сыну уже почти год и семь месяцев, дочке будет 11.
  7. Начал делать ремонт в новой квартире — это просто ПИЗДЕЦ (извините, но на русском так будет понятней)
  8. Очень всерьез занялся подготовкой к получению Зенд сертификата

В общем год считаю очень хорошим.

ЗЫ Надеюсь в первом квартале переедем на новое место )) Люблю свою любимую половинку!

Статья просмотренна 29705 раз, зашло посетителей 8443

 Newer Entries » 

Облако тегов

cli csv dump events form Kohana locale models MySQL mysqldump orm PHP tools trigger validate газ газовый счетчик итоги кеширование переменные

Облако тегов плагина WP Cumulus для WordPress требует для просмотра Flash Player 9 или выше.

Я на твиттере!

  • у твиттера тоже бывают перерывы...

Календарь

Апрель 2024
Пн Вт Ср Чт Пт Сб Вс
« Июл    
1234567
891011121314
15161718192021
22232425262728
2930  

Сейчас на сайте