Hi is it possible to optimize the SELECT query below? The query itself is working but when we are querying large data we are encountering a message in php which is "Maximum execution time of 30 seconds exceeded". I reduced the columns in the query up to Topping3 but I am querying up to Topping15 column.
SELECT
itemID,
itemName,
Topping1,
(SELECT DISTINCT Description FROM items WHERE PLU = a.Topping1 AND ClientID = 1679) AS Top1_desc,
Topping2,
(SELECT DISTINCT Description FROM items WHERE PLU = a.Topping2 AND ClientID = 1679) AS Top2_desc,
Topping3,
(SELECT DISTINCT Description FROM items WHERE PLU = a.Topping2 AND ClientID = 1679) AS Top3_desc,
FROM
items a
WHERE
...
Current data on items table
--------------------------------------------------------------------
| itemID | itemName | Description | Topping1 | Topping2 | Topping3 |
--------------------------------------------------------------------
| 1 | HAM1 | Hamburger | ONI1 | TOMO1 | |
--------------------------------------------------------------------
| 2 | ONI1 | Onion | | | |
--------------------------------------------------------------------
| 3 | TOMO1 | Tomato | | | |
--------------------------------------------------------------------
and this is the expected result
--------------------------------------------------------------------------------------------------------
| itemID | itemName | Description | Topping1 | Top1_desc | Topping2 | Top2_desc | Topping3 | Top3_desc |
--------------------------------------------------------------------------------------------------------
| 1 | HAM1 | Hamburger | ONI1 | Onion | TOMO1 | Tomato | | |
--------------------------------------------------------------------------------------------------------
| 2 | ONI1 | Onion | | | | | | |
--------------------------------------------------------------------------------------------------------
| 3 | TOMO1 | Tomato | | | | | | |
--------------------------------------------------------------------------------------------------------