sql >> Database >  >> RDS >> Mysql

Hoe kan ik deze SELECT CONCAT/GROUP BY-query versnellen?

Maak een samengestelde index op (state, city) en herschrijf uw zoekopdracht als volgt:

SELECT  CONCAT_WS(', ', city, state) AS location, AVG(latitude), AVG(longitude) 
FROM    places
WHERE   state='NY'
        AND city='New York'
GROUP BY
        state, city

Merk op dat je voor deze vraag GROUP BY . mag weglaten clausule:

SELECT  'New York, NY' AS location, AVG(latitude), AVG(longitude) 
FROM    places
WHERE   state='NY'
        AND city='New York'

Deze zoekopdracht heeft het echter nog steeds nodig:

SELECT  CONCAT_WS(', ', city, state) AS location, AVG(latitude), AVG(longitude) 
FROM    places
WHERE   state='NY'
GROUP BY
        state, city


  1. Tekensets en sorteringen in MySQL begrijpen

  2. PostgreSQL 8.4 verleent DML-rechten op alle tabellen aan een rol

  3. mysql opgeslagen functieparameter

  4. Hoe categorie en subcategorieën ontwerpen in MySQL?