Mysql'de sorgu içinde sorgu işlemi
Çoğumuz PHP veya javascript gibi dillerde bir MySQL sorgusunu for içine alıp döndürdükçe döndürüyoruz.
Peki verimliliğin tartışıldığı şu esnada çözüm olarak nasıl bir MySQL sorgusu yazabilirdiniz;
Tablomda kullanıcılar için hazırladığım örnek bir "userKey" yapısı aşağıdaki tabloda var;
Uye | userKey |
---|---|
Üye 1 | mT_0FrncAGLQM-V2QaDnc8m_SZ3OX92bHvRS |
Üye 2 | 5d3SOYwxa9-YYCS5FRZaQOGm6xh62T8phFyML |
Buradan da anlaşılıyor ki tüm userKey'ler random halde gelmekte...
Küçük bir soru da burada yapıştırayım: PHP'de Random diye bir şey var mıdır??? (10:27)
Konu bazımız için önemli olabilir
Gelelim asıl soruya:
SELECT
id, userKey,
FROM
users
WHERE
userKey = '....herhangi bir sıradaki randomKey....'
ORDER BY
id
LIMIT
(buraya bir sorgu gelecek ve aynı tablodan dönen ID değeri x olsun),
x+50
Ben bu şekilde random key üzerinden ilerlerdiğim yapıda LIMIT kısmının başlangıç ID'sini MySQL içinde bana döndürecek, ben de o ID'ye sahip değeri x diye atanan yere atayıp belli bir alandaki datayı çekebileceğim gibi düşünün...
Mantığı belki basittir fakat benim kurgulayamadığım bir gerçek. 😅
Yardımcı olursanız sevinirim.