Created
October 10, 2019 09:09
-
-
Save rbairwell/88139f27ae05a91fe35c1906ad4f32ea to your computer and use it in GitHub Desktop.
Difference in queries
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Runs in <1s: | |
SELECT UserEntity.* | |
FROM ( | |
SELECT UserCoverageEntity.user_id | |
FROM UserCoverageEntity | |
WHERE UserCoverageEntity.id=UNHEX('11e9e4e9c970a3f4857698fa9b0d2efc') | |
UNION | |
SELECT UserSchemeEntity.user_id | |
FROM UserSchemeEntity | |
LEFT JOIN SchemeCategoryEntity ON SchemeCategoryEntity.id=UserSchemeEntity.schemeCategory_id | |
WHERE SchemeCategoryEntity.scheme_id=UNHEX('11e9ded018e2ac0eac7098fa9b0d2efc') | |
) AS b | |
LEFT JOIN UserEntity ON b.user_id=UserEntity.id | |
B: Full table scan > 10s: | |
SELECT UserEntity.* | |
FROM UserEntity | |
WHERE UserEntity.id IN (SELECT UserEntity.id FROM UserEntity | |
INNER JOIN ( | |
SELECT UserCoverageEntity.user_id | |
FROM UserCoverageEntity | |
WHERE UserCoverageEntity.id=UNHEX('11e9e4e9c970a3f4857698fa9b0d2efc') | |
) AS c ON c.user_id=UserEntity.id | |
) | |
OR UserEntity.id IN (SELECT UserEntity.id FROM UserEntity | |
INNER JOIN ( | |
SELECT UserSchemeEntity.user_id | |
FROM UserSchemeEntity | |
LEFT JOIN SchemeCategoryEntity ON SchemeCategoryEntity.id=UserSchemeEntity.schemeCategory_id | |
WHERE SchemeCategoryEntity.scheme_id=UNHEX('11e9ded018e2ac0eac7098fa9b0d2efc') | |
) AS b ON b.user_id=UserEntity.id) | |
C: Full table scan > 10s: | |
SELECT * | |
FROM UserEntity | |
WHERE | |
UserEntity.id IN ( | |
SELECT UserCoverageEntity.user_id | |
FROM UserCoverageEntity | |
WHERE UserCoverageEntity.id=UNHEX('11e9e4e9c970a3f4857698fa9b0d2efc') | |
) | |
OR | |
UserEntity.id IN ( | |
SELECT UserSchemeEntity.user_id | |
FROM UserSchemeEntity | |
LEFT JOIN SchemeCategoryEntity ON SchemeCategoryEntity.id=UserSchemeEntity.schemeCategory_id | |
WHERE SchemeCategoryEntity.scheme_id=UNHEX('11e9ded018e2ac0eac7098fa9b0d2efc') | |
) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment