טבלת products
id INT, PRIMARY
productId: VARCHAR, UNIQUE
name: TEXT, NO INDEX
טבלת products_users
id INT, PRIMARY
userId: INT INDEX
productId: VARCHAR, INDEX
השאילתה:
SELECT products_users.id, products_users.userId, products_users.productId, products.name AS name
FROM products_users
JOIN products ON products.productId=products_users.productId
WHERE userId=123
שאילתה כזו לוקחת יותר מעשר שניות.
אם אני מוריד את ה
products.name AS name
זה נגמר בפחות משניה, למרות שאני משאיר את ה JOIN!
כשאני עובד מול כל טבלה בנפרד, התגובה מהירה מאד, רק כשאני מצרף אותם לשאילתה אחת ושולף את עמודת הטקסט זה נתקע
מה הסיבה?