v2.5.2
Giriş yap

Mysql'de sorgu içinde sorgu işlemi

azizdmrr
249 defa görüntülendi

Ç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;

UyeuserKey
Üye 1mT_0FrncAGLQM-V2QaDnc8m_SZ3OX92bHvRS
Üye 25d3SOYwxa9-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.

kartal
445 gün önce

SET ettiğin keyi nereden alıyorsun onun yerine id sini alsan daha kısa yol olabilir.