Малък проблем INNER JOIN и AND

novakabg

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

И те са:

Код:
	$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)";


Явно е грешен начин :)
 
Оправих се използвах 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]
 

Горе