"Tablo" dediğim bir tablo, Sınıflar ve başka bir tablo var - yani, belirli bir yerdeki belirli bir kişi tarafından öğretilen bir sınıfın örnekleri. Temel olarak hangi derslerin belirli ders parametrelerine göre aktif olduğunu gösteren bir tablo çekmek istiyorum. Örneğin:MySQL'de bir tablonun her satırı için yalnızca bir eşleme ile iki tabloya katılabilir miyim?
CLASSES class_id|class_name --------|------------ 1|Class One 2|Class Two 3|Different Class etc... COURSES course_id|class_id|room ---------|--------|-------- 1| 3| 1 2| 3| 2 3| 1| 1 4| 3| 1 5| 3| 2 6| 2| 1 etc...
Sadece her sınıf yalnızca bir örneğini döndürmek için SELECT classes.* FROM classes JOIN courses ON classes.class_id=courses.class_id WHERE courses.room=1
gibi bir şey alabilirsiniz bir yolu olup olmadığını merak ediyorum. Neler oluyor, sadece oda 1'de yer alan sınıfları alıyorum, ancak her birinin birden fazla örneğini alıyorum çünkü 1. sınıftaki ders tablosunda birden fazla örnek var.
JOIN
- sol, sağ, iç, vb. farklı her türlü denedi - ve bir tablonun diğerinden aldığı özellikleri temel alarak çekiyorum çünkü hepsi aynı sonucu veriyor.
class_id| class_name |course_id|room --------|--------------|---------|-------- 1|Class One | 3| 1 2|Class Two | 6| 1 3|Diferent Class| 1| 1 3|Diferent Class| 4| 1 etc...
Ama sadece almak istiyorum:
yüzden alıyorum
class_id| class_name |course_id|room --------|--------------|---------|-------- 1|Class One | 3| 1 2|Class Two | 6| 1 3|Diferent Class| 1| 1 etc...
Ben Sınıflar her satır için ilk maç sadece JOIN
o olabilir mi? MySQL ile yeni biriyim, bu yüzden açıkça yapmak istediklerimi ifade etmekte biraz sorun yaşıyorum; Özür dilerim.
Ayrıca: Tüm bunları PDO
aracılığıyla PHP'ye yüklüyorum - belki bunu PDO
içinde başarmanın belirli bir yolu var mı? sorguda ORDER BY
madde değiştirerek
DERSLER tablosundan sadece bir kayıt istiyorsan, hangisini istiyorsun? IE: Her zaman en düşük kursiyer (& oda?) Değeri? –
Bu kesinlikle önemli değil. Haklısın, bunu belirtmeliydim. Ben sadece CLASSES verilerine gidiyorum; DERSİN için gideceğim tek neden, sadece doğru kritere sahip ilgili dersleri olan Sınıfları almaktır. –