簡體   English   中英

如何比較同一MySQL表中的2條記錄

[英]How Do You Compare 2 Records From The Same MySQL Table

是否可以比較同一張表中的2條記錄? 我已經比較了兩個表,以確保我的記錄使用正確

SELECT * 
FROM `catalog_category_entity_varchar` c2t
WHERE NOT EXISTS (
    SELECT * 
    FROM `core_url_rewrite` c 
    WHERE c.category_id = c2t.entity_id
)

現在,我正在嘗試比較catalog_category_entity_varchar中的記錄是否存在不一致之處。 這是我的兩個記錄的示例。

catalog_category_entity_varchar:

記錄1:
值ID:68
實體類型編號:3
attribute_id:43
store_id:0
實體編號:10
值:逐筆

記錄2:
值ID:73
實體類型編號:3
attribute_id:57
store_id:0
實體編號:10
值:shop-by.html

entity_id是唯一的標識符。 我必須將url鍵的attribute_id = 43的值與url的attribute_id 57的值進行比較。我假設我必須在之后使用通配符%,它將刪除.html,而在之前使用另一個通配符,它​​將刪除一部分任何2級以上類別網址上的網址(例如catalog / shirts / shop-by.html)。

如果可以輕松地復制表和初始的比較語句,則只需要知道如何修改查詢以匹配屬性ID並使用通配符即可。

我不確定這會做您想做的所有事情,但是我認為這可能是朝正確方向邁出的一步。 它將比較具有43屬性和57屬性的記錄,並查看43記錄的值字段是否不在57記錄的值字段中。

SELECT  *

FROM    catalog_category_entity_varchar t1

        JOIN catalog_category_entity_varchar t2
        ON t1.entity_id = t2.entity_id
        AND t2.attribute_id = 57

WHERE   t1.attribute_id = 43
        AND INSTR(t2.value, t1.value) = 0;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM