Hepsini tek tabloda tanımlamak yerine, parçalara bölmek çok daha sağlıklı olacaktır. Örneklendirecek olursak :
Üyeler Tablosu :
--------------------------------
uye_id | mail | password | sehir_id | uyelik_tipi
Şehirler Tablosu :
---------------------------------
sehir_id | sehir_adi
Üyelik Tipleri Tablosu :
--------------------------------
tip_id | tip_adi
Böyle bir yapıda üyeler tablosundaki sehir_id alanında, sehirler tablosunda bulunan kaydın id numarasını tutarız. uyelik_tipi içinde aynı şekilde.
Bunları sorgu ile çekerken join işlemi yapabiliriz.
SELECT
uyeler.id, uyeler.mail, sehirler.sehir_ad, tipler.tip_ad
FROM
uyeler
INNER JOIN
sehirler
ON
uyeler.sehir_id = sehirler.sehir_id
INNER JOIN
tipler
ON
uyeler.uyelik_tipi = tipler.tip_id
Merhaba,
Daha önce bu şekilde kullanmadım.

Ancak bahsettiğim veri yapısı
900 değişkenden oluşuyor. Değişkenler genelde 0 ve 1 lerden oluşuyor. Bu durumda bu yapı sorun çıkartmaz mı yada karışmaz mı?
tablo :
id - isim - alanlar
alanlar'ı long text yaparsan bilgileride
<alanadi1:değeri><alanadi2:değere>...<alanadi900:değer900>
şeklinde girdirebilirsin. verileri çekerken preg_match_all kullanıp alanlar sütununu parçalatıp değerleri alabilirsin. farklı bi çözüm yolu ama kullanımı biraz karışık olur. misal her hangi bir alana göre sıralama yaptıramazsın. ama tüm alanlarda sıralamalar olmıyacaksa sıralamaların yapılacağı alanlarıda normal olarak sütunlarda girdirirsen sıkıntı olmaz sanırım.
Bu yapıyı da test edebiliriz.
Yardımcı olan tüm arkadaşlara teşekkürler.