# Стандартный 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)<now(), 'green', IF(BE.WF_LOCKED_BY=3, 'yellow', 'red'))) AS LOCK_STATUS,
BE.WF_LOCKED_BY AS WF_LOCKED_BY,
DATE_FORMAT(DATE_ADD(BE.WF_DATE_LOCK, INTERVAL 18000 SECOND), '%d.%m.%Y %H:%i:%s') AS WF_DATE_LOCK,
BE.WF_COMMENTS AS WF_COMMENTS,
BE.IN_SECTIONS AS IN_SECTIONS,
BE.SHOW_COUNTER AS SHOW_COUNTER,
DATE_FORMAT(DATE_ADD(BE.SHOW_COUNTER_START, INTERVAL 18000 SECOND), '%d.%m.%Y %H:%i:%s') AS SHOW_COUNTER_START,
BE.CODE AS CODE,
BE.TAGS AS TAGS,
BE.XML_ID AS XML_ID,
BE.XML_ID AS EXTERNAL_ID,
BE.TMP_ID AS TMP_ID,
concat('(', U.LOGIN, ') ', ifnull(U.NAME, ''), ' ', ifnull(U.LAST_NAME, '')) AS USER_NAME,
concat('(', UL.LOGIN, ') ', ifnull(UL.NAME, ''), ' ', ifnull(UL.LAST_NAME, '')) AS LOCKED_USER_NAME,
concat('(', UC.LOGIN, ') ', ifnull(UC.NAME, ''), ' ', ifnull(UC.LAST_NAME, '')) AS CREATED_USER_NAME,
L.DIR AS LANG_DIR,
B.LID AS LID,
B.IBLOCK_TYPE_ID AS IBLOCK_TYPE_ID,
B.CODE AS IBLOCK_CODE,
B.NAME AS IBLOCK_NAME,
B.XML_ID AS IBLOCK_EXTERNAL_ID,
B.DETAIL_PAGE_URL AS DETAIL_PAGE_URL,
B.LIST_PAGE_URL AS LIST_PAGE_URL,
B.CANONICAL_PAGE_URL AS CANONICAL_PAGE_URL,
DATE_FORMAT(BE.DATE_CREATE, '%Y.%m.%d') AS CREATED_DATE,
IF(BE.WF_STATUS_ID = 1, 'Y', 'N') AS BP_PUBLISHED,
CAT_P1.ID AS CATALOG_PRICE_ID_1,
CAT_P1.CATALOG_GROUP_ID AS CATALOG_GROUP_ID_1,
CAT_P1.PRICE AS CATALOG_PRICE_1,
CAT_P1.CURRENCY AS CATALOG_CURRENCY_1,
CAT_P1.QUANTITY_FROM AS CATALOG_QUANTITY_FROM_1,
CAT_P1.QUANTITY_TO AS CATALOG_QUANTITY_TO_1,
'Цена' AS CATALOG_GROUP_NAME_1,
'Y' AS CATALOG_CAN_ACCESS_1,
'Y' AS CATALOG_CAN_BUY_1,
CAT_P1.EXTRA_ID AS CATALOG_EXTRA_ID_1,
CAT_PR.QUANTITY AS CATALOG_QUANTITY,
CAT_PR.QUANTITY_RESERVED AS CATALOG_QUANTITY_RESERVED,
IF (CAT_PR.QUANTITY_TRACE = 'D',
'Y',
CAT_PR.QUANTITY_TRACE) AS CATALOG_QUANTITY_TRACE,
CAT_PR.QUANTITY_TRACE AS CATALOG_QUANTITY_TRACE_ORIG,
IF (CAT_PR.CAN_BUY_ZERO = 'D',
'N',
CAT_PR.CAN_BUY_ZERO) AS CATALOG_CAN_BUY_ZERO,
CAT_PR.CAN_BUY_ZERO AS CATALOG_CAN_BUY_ZERO_ORIG,
IF (CAT_PR.NEGATIVE_AMOUNT_TRACE = 'D',
'Y',
CAT_PR.NEGATIVE_AMOUNT_TRACE) AS CATALOG_NEGATIVE_AMOUNT_TRACE,
CAT_PR.NEGATIVE_AMOUNT_TRACE AS CATALOG_NEGATIVE_AMOUNT_ORIG,
IF (CAT_PR.SUBSCRIBE = 'D',
'Y',
CAT_PR.SUBSCRIBE) AS CATALOG_SUBSCRIBE,
CAT_PR.SUBSCRIBE AS CATALOG_SUBSCRIBE_ORIG,
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') 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)))
Comments
0 B
|👍
/👎