# Стандартный SQL запрос битрикса # Выполняется около 0.2 сек SELECT DISTINCT BE.ID AS ID, DATE_FORMAT(DATE_ADD(BE.TIMESTAMP_X, INTERVAL 18000 SECOND), '%d.%m.%Y %H:%i:%s') AS TIMESTAMP_X, UNIX_TIMESTAMP(BE.TIMESTAMP_X) AS TIMESTAMP_X_UNIX, BE.MODIFIED_BY AS MODIFIED_BY, DATE_FORMAT(DATE_ADD(BE.DATE_CREATE, INTERVAL 18000 SECOND), '%d.%m.%Y %H:%i:%s') AS DATE_CREATE, UNIX_TIMESTAMP(BE.DATE_CREATE) AS DATE_CREATE_UNIX, BE.CREATED_BY AS CREATED_BY, BE.IBLOCK_ID AS IBLOCK_ID, BE.IBLOCK_SECTION_ID AS IBLOCK_SECTION_ID, BE.ACTIVE AS ACTIVE, IF(EXTRACT(HOUR_SECOND FROM BE.ACTIVE_FROM)>0, DATE_FORMAT(DATE_ADD(BE.ACTIVE_FROM, INTERVAL 18000 SECOND), '%d.%m.%Y %H:%i:%s'), DATE_FORMAT(BE.ACTIVE_FROM, '%d.%m.%Y')) AS ACTIVE_FROM, IF(EXTRACT(HOUR_SECOND FROM BE.ACTIVE_TO)>0, DATE_FORMAT(DATE_ADD(BE.ACTIVE_TO, INTERVAL 18000 SECOND), '%d.%m.%Y %H:%i:%s'), DATE_FORMAT(BE.ACTIVE_TO, '%d.%m.%Y')) AS ACTIVE_TO, IF(EXTRACT(HOUR_SECOND FROM BE.ACTIVE_FROM)>0, DATE_FORMAT(DATE_ADD(BE.ACTIVE_FROM, INTERVAL 18000 SECOND), '%d.%m.%Y %H:%i:%s'), DATE_FORMAT(BE.ACTIVE_FROM, '%d.%m.%Y')) AS DATE_ACTIVE_FROM, IF(EXTRACT(HOUR_SECOND FROM BE.ACTIVE_TO)>0, DATE_FORMAT(DATE_ADD(BE.ACTIVE_TO, INTERVAL 18000 SECOND), '%d.%m.%Y %H:%i:%s'), DATE_FORMAT(BE.ACTIVE_TO, '%d.%m.%Y')) AS DATE_ACTIVE_TO, BE.SORT AS SORT, BE.NAME AS NAME, BE.PREVIEW_PICTURE AS PREVIEW_PICTURE, BE.PREVIEW_TEXT AS PREVIEW_TEXT, BE.PREVIEW_TEXT_TYPE AS PREVIEW_TEXT_TYPE, BE.DETAIL_PICTURE AS DETAIL_PICTURE, BE.DETAIL_TEXT AS DETAIL_TEXT, BE.DETAIL_TEXT_TYPE AS DETAIL_TEXT_TYPE, BE.SEARCHABLE_CONTENT AS SEARCHABLE_CONTENT, BE.WF_STATUS_ID AS WF_STATUS_ID, BE.WF_PARENT_ELEMENT_ID AS WF_PARENT_ELEMENT_ID, BE.WF_LAST_HISTORY_ID AS WF_LAST_HISTORY_ID, BE.WF_NEW AS WF_NEW, IF (BE.WF_DATE_LOCK IS NULL, 'green', if(DATE_ADD(BE.WF_DATE_LOCK, interval 60 MINUTE) 0 OR IF (CAT_PR.QUANTITY_TRACE = 'D', 'Y', CAT_PR.QUANTITY_TRACE) = 'N' OR IF (CAT_PR.CAN_BUY_ZERO = 'D', 'N', CAT_PR.CAN_BUY_ZERO) = 'Y', 'Y', 'N') AS CATALOG_AVAILABLE, CAT_PR.WEIGHT AS CATALOG_WEIGHT, CAT_PR.WIDTH AS CATALOG_WIDTH, CAT_PR.LENGTH AS CATALOG_LENGTH, CAT_PR.HEIGHT AS CATALOG_HEIGHT, CAT_PR.MEASURE AS CATALOG_MEASURE, CAT_VAT.RATE AS CATALOG_VAT, CAT_PR.VAT_INCLUDED AS CATALOG_VAT_INCLUDED, CAT_PR.PRICE_TYPE AS CATALOG_PRICE_TYPE, CAT_PR.RECUR_SCHEME_TYPE AS CATALOG_RECUR_SCHEME_TYPE, CAT_PR.RECUR_SCHEME_LENGTH AS CATALOG_RECUR_SCHEME_LENGTH, CAT_PR.TRIAL_PRICE_ID AS CATALOG_TRIAL_PRICE_ID, CAT_PR.WITHOUT_ORDER AS CATALOG_WITHOUT_ORDER, CAT_PR.SELECT_BEST_PRICE AS CATALOG_SELECT_BEST_PRICE, CAT_PR.PURCHASING_PRICE AS CATALOG_PURCHASING_PRICE, CAT_PR.PURCHASING_CURRENCY AS CATALOG_PURCHASING_CURRENCY, CAT_PR.TYPE AS CATALOG_TYPE FROM b_iblock B INNER JOIN b_lang L ON B.LID=L.LID INNER JOIN b_iblock_element BE ON BE.IBLOCK_ID = B.ID INNER JOIN b_iblock_property FP0 ON FP0.IBLOCK_ID = B.ID AND FP0.CODE='YEAR' INNER JOIN b_iblock_property FP1 ON FP1.IBLOCK_ID = B.ID AND FP1.CODE='MODEL' INNER JOIN b_iblock_element_prop_m2 FPV0 ON FPV0.IBLOCK_PROPERTY_ID = FP0.ID AND FPV0.IBLOCK_ELEMENT_ID = BE.ID INNER JOIN b_iblock_element_prop_m2 FPV1 ON FPV1.IBLOCK_PROPERTY_ID = FP1.ID AND FPV1.IBLOCK_ELEMENT_ID = BE.ID INNER JOIN b_iblock_2_index FC ON FC.ELEMENT_ID = BE.ID LEFT JOIN b_catalog_price CAT_P1 ON (CAT_P1.PRODUCT_ID = BE.ID AND CAT_P1.CATALOG_GROUP_ID = 1) AND ((CAT_P1.QUANTITY_FROM <= 1 OR CAT_P1.QUANTITY_FROM IS NULL) AND (CAT_P1.QUANTITY_TO >= 1 OR CAT_P1.QUANTITY_TO IS NULL)) LEFT JOIN b_catalog_product CAT_PR ON (CAT_PR.ID = BE.ID) LEFT JOIN b_catalog_iblock CAT_IB ON ((CAT_PR.VAT_ID IS NULL OR CAT_PR.VAT_ID = 0) AND CAT_IB.IBLOCK_ID = BE.IBLOCK_ID) LEFT JOIN b_catalog_vat CAT_VAT ON (CAT_VAT.ID = IF((CAT_PR.VAT_ID IS NULL OR CAT_PR.VAT_ID = 0), CAT_IB.VAT_ID, CAT_PR.VAT_ID)) LEFT JOIN b_user U ON U.ID=BE.MODIFIED_BY LEFT JOIN b_user UL ON UL.ID=BE.WF_LOCKED_BY LEFT JOIN b_user UC ON UC.ID=BE.CREATED_BY WHERE 1=1 AND ((FC.SECTION_ID = 8 AND FC.FACET_ID = 1 AND FC.VALUE_NUM = 0 AND FC.VALUE IN (0)) AND ((((BE.IBLOCK_ID = '2')))) AND (EXISTS (SELECT IBLOCK_ID FROM b_iblock_site WHERE IBLOCK_ID = B.ID AND (((SITE_ID='s1'))) )) AND ((((B.ACTIVE='Y')))) AND (((BE.ACTIVE_TO >= now() OR BE.ACTIVE_TO IS NULL) AND (BE.ACTIVE_FROM <= now() OR BE.ACTIVE_FROM IS NULL))) AND ((((BE.ACTIVE='Y')))) AND ((IF (CAT_PR.QUANTITY > 0 OR IF (CAT_PR.QUANTITY_TRACE = 'D', 'Y', CAT_PR.QUANTITY_TRACE) = 'N' OR IF (CAT_PR.CAN_BUY_ZERO = 'D', 'N', CAT_PR.CAN_BUY_ZERO) = 'Y', 'Y', 'N') = 'Y')) AND (1=1) AND ((((FPV0.VALUE LIKE '1991')))) AND ((((FPV1.VALUE_NUM = '695'))))) AND (((BE.WF_STATUS_ID=1 AND BE.WF_PARENT_ELEMENT_ID IS NULL)))