- Малък проблем INNER JOIN и AND
WT форуми -> PHP MySQL ASP.NET -> Малък проблем INNER JOIN и AND
Създайте нова тема Напишете отговор 
Автор Съобщение
novakabg
Турист
Турист

Регистриран на: 13/05/2016 2:29 pm

Support: 5
Bonus: 10
Мнения: 258
Мнение 14/12/2017 1:35 pm     Малък проблем INNER JOIN и AND Отговорете с цитат


Здравейте имам две таблички със значки и снимчици.
Опитвам се да ги слея.

И те са:

   $sql .= " INNER JOIN oca_badge_special ps ON (ps.badge_id = p.badge_id)";
 


И:
$sql .= " INNER JOIN oca_present_badge olp ON (olp.badge_id = p.product_id)";



По този начин се пробвах:

$sql .= " INNER JOIN oca_badge_special ps ON (ps.badge_id = p.badge_id) AND oca_present_badge olp ON (olp.badge_id = p.badge_id)";



Явно е грешен начин Smile
Върнете се в началото
Вижте профила на потребителя Изпратете лично съобщение
novakabg
Турист
Турист

Регистриран на: 13/05/2016 2:29 pm

Support: 5
Bonus: 10
Мнения: 258
Мнение 14/12/2017 2:13 pm      Отговорете с цитат


Оправих се използвах LEFT JOIN

Обаче сега тука имам проблем.
 
 
      $sql .= " LEFT JOIN " . DB_PREFIX . "badge_description pd ON (p.badge_id = pd.badge_id)
      LEFT JOIN " . DB_PREFIX . "badge_to_store p2s ON (p.badge_id = p2s.badge_id)
        WHERE p.status = '1'
      AND p.date_available <= NOW()
      AND p2s.store_id = '" . (int)$this->config->get('config_store_id') . "'
      AND ps.customer_group_id = '" . (int)$this->config->get('config_customer_group_id') . "'
      AND ((ps.date_start = '0000-00-00'
      OR ps.date_start < NOW())
      AND (ps.date_end = '0000-00-00' OR ps.date_end > NOW())) 
      AND p2s.store_id = '" . (int)$this->config->get('config_store_id') . "'
      AND p.status = 1";
      
      
      
      $sql .= " LEFT JOIN " . DB_PREFIX . "badge_description pd ON (p.badge_id = pd.badge_id)
      LEFT JOIN " . DB_PREFIX . "badge_to_store p2s ON (p.badge_id = p2s.badge_id)
        WHERE p.status = '1'
      AND p.date_available <= NOW() AND p2s.store_id = '" . (int)$this->config->get('config_store_id') . "'
      AND ((olp.date_start = '0000-00-00' OR olp.date_start < NOW())
      AND (olp.date_end = '0000-00-00' OR olp.date_end > NOW())) 
      AND p2s.store_id = '" . (int)$this->config->get('config_store_id') . "'
      AND p.status = 1";
      



Нещо не се получава пробвах със INNER и JOIN нищо.[/code]
Върнете се в началото
Вижте профила на потребителя Изпратете лично съобщение
Fakeheal
Support
Support

Регистриран на: 17/04/2010 8:37 am

Support: 342
Bonus: 682
Мнения: 2572
Мнение 14/12/2017 3:58 pm      Отговорете с цитат


Цитат:
пробвах със INNER и JOIN


I'm just gonna leave this here.

https://www.w3schools.com/sql/
Върнете се в началото
Вижте профила на потребителя Изпратете лично съобщение
anonimen
Активен
Активен

Регистриран на: 11/06/2012 8:07 pm

Support: 147
Bonus: 293
Мнения: 1361
Мнение 14/12/2017 7:15 pm      Отговорете с цитат


Fakeheal написа:
Цитат:
пробвах със INNER и JOIN


I'm just gonna leave this here.

https://www.w3schools.com/sql/

Never hurts to be precise: https://www.w3schools.com/sql/sql_join.asp Very Happy
Върнете се в началото
Вижте профила на потребителя Изпратете лично съобщение
novakabg
Турист
Турист

Регистриран на: 13/05/2016 2:29 pm

Support: 5
Bonus: 10
Мнения: 258
Мнение 14/12/2017 7:19 pm      Отговорете с цитат


УСПЯЯЯЯХХ!!!!
Благодаря ВИ! :***
Върнете се в началото
Вижте профила на потребителя Изпратете лично съобщение
Покажи мнения от преди:    
Създайте нова тема   Напишете отговор    web-tourist.net Форуми -> PHP MySQL ASP.NET Часовете са според зоната GMT + 2 Часа
Страница 1 от 1


 
Идете на:  
Не Можете да пускате нови теми
Не Можете да отговаряте на темите
Не Можете да променяте съобщенията си
Не Можете да изтривате съобщенията си
Не Можете да гласувате в анкети