COUNT
ਵਿੱਚ ਸਵਾਲਾਂ ਨੂੰ ਅਨੁਕੂਲ ਬਣਾਉਣਾ MySQL
ਡੇਟਾਬੇਸ ਦੀ ਕਾਰਗੁਜ਼ਾਰੀ ਵਿੱਚ ਸੁਧਾਰ ਕਰਨ ਲਈ ਇੱਕ ਮਹੱਤਵਪੂਰਨ ਕੰਮ ਹੈ। ਇੱਥੇ ਇਸਨੂੰ ਪ੍ਰਾਪਤ ਕਰਨ ਦੇ ਕੁਝ ਤਰੀਕੇ ਹਨ:
ਵਰਤੋ INDEX
ਯਕੀਨੀ ਬਣਾਓ ਕਿ ਤੁਸੀਂ ਪੁੱਛਗਿੱਛ ਵਿੱਚ ਵਰਤੇ ਗਏ ਖੇਤਰਾਂ ਲਈ ਸੂਚਕਾਂਕ ਬਣਾਏ ਹਨ COUNT
। ਸੂਚਕਾਂਕ MySQL
ਖੋਜ ਅਤੇ ਤੇਜ਼ੀ ਨਾਲ ਡਾਟਾ ਗਿਣਨ ਵਿੱਚ ਮਦਦ ਕਰਦੇ ਹਨ।
ਦੀ ਬਜਾਏ ਵਰਤੋ COUNT(
)
COUNT(column)
ਜਦੋਂ ਤੁਸੀਂ ਸਿਰਫ਼ ਸਾਰਣੀ ਵਿੱਚ ਰਿਕਾਰਡਾਂ ਦੀ ਕੁੱਲ ਸੰਖਿਆ ਦੀ ਪਰਵਾਹ ਕਰਦੇ ਹੋ, ਤਾਂ ਇਸਦੀ COUNT()
ਬਜਾਏ ਵਰਤੋਂ COUNT(column)
। COUNT(*)
ਕਿਸੇ ਖਾਸ ਕਾਲਮ ਦੇ ਮੁੱਲ 'ਤੇ ਵਿਚਾਰ ਕੀਤੇ ਬਿਨਾਂ ਸਾਰਣੀ ਦੀਆਂ ਸਾਰੀਆਂ ਕਤਾਰਾਂ ਦੀ ਗਿਣਤੀ ਕਰਦਾ ਹੈ, ਪੁੱਛਗਿੱਛ ਨੂੰ ਤੇਜ਼ ਬਣਾਉਂਦਾ ਹੈ।
ਨਤੀਜਾ ਸੈੱਟ ਸੀਮਿਤ ਕਰੋ
ਜੇਕਰ ਤੁਹਾਨੂੰ ਸਿਰਫ਼ ਇੱਕ ਖਾਸ ਸੀਮਾ ਦੇ ਅੰਦਰ ਰਿਕਾਰਡਾਂ ਦੀ ਗਿਣਤੀ ਕਰਨ ਦੀ ਲੋੜ ਹੈ, ਤਾਂ ਪੁੱਛਗਿੱਛ WHERE
ਦੇ ਨਤੀਜੇ ਸੈੱਟ ਨੂੰ ਸੀਮਿਤ ਕਰਨ ਲਈ ਧਾਰਾ ਦੀ ਵਰਤੋਂ ਕਰਨ 'ਤੇ ਵਿਚਾਰ ਕਰੋ। COUNT
ਇਹ ਪੁੱਛਗਿੱਛ ਨੂੰ ਤੇਜ਼ੀ ਨਾਲ ਚਲਾਉਣ ਵਿੱਚ ਮਦਦ ਕਰਦਾ ਹੈ ਕਿਉਂਕਿ ਇਸਨੂੰ ਪੂਰੀ ਸਾਰਣੀ ਦੀ ਗਿਣਤੀ ਨਹੀਂ ਕਰਨੀ ਪੈਂਦੀ।
ਵਰਤੋ subquery
ਜਾਂ subtable
ਕੁਝ ਮਾਮਲਿਆਂ ਵਿੱਚ, ਸਬਕਵੇਰੀਆਂ ਦੀ ਵਰਤੋਂ ਕਰਨਾ ਜਾਂ ਪ੍ਰੀ-ਕੰਪਿਊਟਿਡ ਗਣਨਾ ਕਰਨ ਲਈ ਸਬ-ਟੇਬਲ ਬਣਾਉਣਾ ਮੁੱਖ COUNT
ਪੁੱਛਗਿੱਛ 'ਤੇ ਲੋਡ ਨੂੰ ਘਟਾਉਣ ਵਿੱਚ ਮਦਦ ਕਰ ਸਕਦਾ ਹੈ।
ਮੈਮੋਰੀ ਦੀ ਵਰਤੋਂ ਕਰੋ cache
ਮੈਮੋਰੀ ਦੀ ਵਰਤੋਂ ਕਰਨ ਲਈ MySQL ਨੂੰ ਕੌਂਫਿਗਰ ਕਰੋ cache
, ਜੋ ਕਿ ਸਵਾਲਾਂ ਦੀ ਕਾਰਗੁਜ਼ਾਰੀ ਵਿੱਚ ਸੁਧਾਰ ਕਰ ਸਕਦੀ ਹੈ COUNT
, ਖਾਸ ਕਰਕੇ ਜਦੋਂ ਉਹਨਾਂ ਨੂੰ ਅਕਸਰ ਚਲਾਇਆ ਜਾਂਦਾ ਹੈ।
ਵਰਤਣ 'ਤੇ ਵਿਚਾਰ ਕਰੋ APPROXIMATE COUNT
MySQL 8.0 ਅਤੇ ਨਵੇਂ ਸੰਸਕਰਣਾਂ ਵਿੱਚ, ਤੁਸੀਂ APPROXIMATE COUNT
ਵੱਡੀਆਂ ਟੇਬਲਾਂ ਲਈ ਅਨੁਮਾਨਿਤ ਗਿਣਤੀ ਤੇਜ਼ੀ ਨਾਲ ਕਰਨ ਲਈ ਵਿਸ਼ੇਸ਼ਤਾ ਦੀ ਵਰਤੋਂ ਕਰ ਸਕਦੇ ਹੋ।
ਐਗਜ਼ੀਕਿਊਸ਼ਨ ਪਲਾਨ ਦੀ ਜਾਂਚ ਕਰੋ
EXPLAIN
ਪੁੱਛਗਿੱਛ ਦੀ ਐਗਜ਼ੀਕਿਊਸ਼ਨ ਪਲਾਨ ਦੀ ਜਾਂਚ ਕਰਨ ਲਈ ਵਰਤੋਂ ਕਰੋ COUNT
ਅਤੇ ਦੇਖੋ ਕਿ ਕੀ ਸੂਚਕਾਂਕ ਸਹੀ ਢੰਗ ਨਾਲ ਵਰਤੇ ਗਏ ਹਨ ਅਤੇ ਕੀ ਪੁੱਛਗਿੱਛ ਨੂੰ ਅਨੁਕੂਲ ਬਣਾਇਆ ਗਿਆ ਹੈ।
ਇਹ ਗੱਲ ਧਿਆਨ ਵਿੱਚ ਰੱਖੋ ਕਿ ਇਹਨਾਂ ਅਨੁਕੂਲਨ ਤਕਨੀਕਾਂ ਦੀ ਪ੍ਰਭਾਵਸ਼ੀਲਤਾ ਤੁਹਾਡੇ ਡੇਟਾਬੇਸ ਦੀ ਬਣਤਰ ਅਤੇ ਪੈਮਾਨੇ ਦੇ ਅਧਾਰ ਤੇ ਵੱਖ-ਵੱਖ ਹੋ ਸਕਦੀ ਹੈ। ਉਤਪਾਦਨ ਵਾਤਾਵਰਣ ਵਿੱਚ ਲਾਗੂ ਕਰਨ ਤੋਂ ਪਹਿਲਾਂ ਹਰੇਕ ਅਨੁਕੂਲਨ ਦੇ ਪ੍ਰਭਾਵ ਦੀ ਜਾਂਚ ਅਤੇ ਮੁਲਾਂਕਣ ਕਰੋ।