0
SELECT ID,uye,kazanilacakmiktar FROM kupon WHERE durum=0 AND ID IN (
select c.kupon
from kuponbahis c join
bahis b
on ((b.sonuc = c.secim) OR (b.sonuc=5)) and b.ID = c.bahis
group by c.kupon
having sum(c.bahis = '999') > 0 and
count(*) = (SELECT COUNT(*) FROM kuponbahis WHERE kupon = c.kupon));
このようなクエリがあります。私はkupon.ID, kupon.uye, kupon.kazanilacakmiktar, kuponbahis.bahis, kuponbahis.secim
にインデックスを持っていますが、まだ重要なランタイムがあります。MySQLでどの列をインデックス化するのですか?
私が迷っていること、間違っていることは何ですか?クエリの
サンプルデータと希望の結果で別の質問をしたい場合があります。クエリを書くためのより良い方法があるかもしれません。 –
あなたはすべてを普通の英語で書いていると、より鋭い応答を得るでしょう。つまり、kupon =>クーポンです。理解するのがずっと簡単です。さらに情報を追加して、すべてのフィールドと一意性を持つすべてのインデックス、および各テーブルの行数をリストしたいと思うでしょう。 –