sahin1453 adlı üyeden alıntı: mesajı görüntüle
İyi güzel diyorsunuzda, farklı tablo olunca daha hızlı çalışacağını düşünüyorum, çünkü tablonun veri boyutu böylece düşecektir.
Kısmen yanlış düşünüyorsunuz. Döngünün her bir turunda dört sorgu daha çalıştırarak performans kazandıramazsınız. Verileri mümkün olduğunca tek bağlantıda çekmek daha faydalıdır.

Mevcut yapınızda bu sorunun üstesinden gelmek için JOIN kullanabilirsiniz.

SELECT
	FIR.icerik_id,FIR.image,
	FIR.adi,FIR.telefon,
	FIR.websayfa,FIR.vitrin,
	SEH.icerik_id SEHIRID,SEH.sehirismi,
	ILC.icerik_id ILCEID,ILC.ilceismi,
	SEK.icerik_id SEKTORID,SEK.sektorleradi,
	ASEK.icerik_id ALTSEKTORID,ASEK.sektorleradi
FROM FIRMALAR FIR
LEFT JOIN SEHIRLER SEH
	ON FIR.sehir_icerik_id = SEH.icerik_id
LEFT JOIN ILCELER ILC
	ON FIR.ilce_icerik_id = ILC.icerik_id
LEFT JOIN SEKTORLER SEK
	ON FIR.sektorler_icerik_id = SEK.icerik_id
LEFT JOIN ALTSEKTORLER ASEK
	ON FIR.sektorleralt_icerik_id = ASEK.icerik_id
Döngünün içindeki tüm sorguları iptal edip, yukarıdaki sorguyu "firmalar" kayıtsetine kopyalayın. HTML içinde kullandığınız alanları da firmalar("sütun") şeklinde güncelleyin. Faydası olacağını düşünüyorum.

Bu düzenlemeye ek olarak; "cevir" ve "websayfatemizle" gibi fonksiyonlar da kullanmışsınız. İşlerini ne şekilde yürüttüklerini bilmediğim için yorum yapamıyorum ancak onları da gözden geçirmenizde fayda olabilir.

İPUCU:
"cevir" fonksiyonu ile URL'ler üretiyorsunuz anladığım kadarıyla. Her sorgulamada ve bu sorguların döngülerinde sonuçları bu fonksiyona sokup, IIS'e ek yük bindirmek yerine, "firmalar" tablosunda çevrilmiş hâlinin saklanacağı bir sütun açıp, yalnızca INSERT edilirken bu fonksiyonu kullanmanız performans için daha doğru olacaktır.

Neticede SELECT sorguları genelde ezici bir farkla INSERT işlemlerinden çok daha sık kullanılıyor.

Alıntı yaptığım cevabınız için de açıklamam yukarıdaki ipucunda yer alıyor. Sütun sayısı arttı ama performans kaybı oldukça azaldı (deneyince fark edeceksiniz).