Kodları lütfen aşağıdaki butonları kullanarak renklendirin. Örnek: <php> echo "Selam Dünya"; </php>
Yardım
karakter kaldı

İlişkili mysql yapısı hakkında ufak bir yardım

Merhaba arkadaşlar ufak bir yardıma ihtiyacım var

Yaptığım uygulamada 2 adet tablom var, birinde(questionList) sorular diğerinde (usersAnswer) ise kişinin o soruya verdiği cevaplar var

ikinci tabloyu şöyle oluşturuyorum: Kullanıcı bir soru cevaplıyor ve cevapladığı sorunun id'sini userAnsewer tablosunda QuestionID diye tazdırıyorum

Şimdi kullanıcı yeni bir soruya cevap verecek ve daha önce cevap verdiği sorunun gelmemesi lazım.Yani usersAnswer tablosundaki questionID değerlerini alıp yeni soruyu o değerler olmayan soru getirtmem gerek

İlişkili tablo yapılarına hiç hakim değilim bu konuda nasıl bir quert kullanmam gerektiği hakkında yardım ederseniz çok sevinirim.

Şimdiden teşekkürler
+0
-0
Cevaba KatılıyorumKatılmıyorum
Cevap Yaz Yorum Yaz Arşivime Ekle Takip Et

Doğru Cevap

  • tapsin adlı üyenin fotoğrafı
    10 yıl önce yazılmış
    147 cevap - 0 soru
    select sorular.* from sorular,cevaplanmis where sorular.cevaplanmis.id!=cevaplanmis.id

    Tabloları tam anlayamadım sisteminde ki fakat sana örnek teşkil etsin diye bu kodu koydum..

    Bir sorular tablosu birde cevaplanmis tablosu üzerinde sorulardaki normal id cevaplanmislarda cevaplanmis id olarak eklendiğini varsaydım ve karşılaştırma yapdım sorulardaki id ile cevaplanmis id aynı olanlaraı getirmeyecek farklı olanların tüm bilgilerini sorular tablosundan çekecek.

    Açıklayıcı oldumu bilmem ama tablolarını tam bir şekilde yazarsan ona göre kodu da eklerim bana göre bu da yardımcı olacaktır. Mantık yürütmen açısından
    • dejin adlı üyenin fotoğrafı dejin
      ID	FacebookID	QuestionID	QuestionFor	AnswerID	AnswerValue	Date 
      --> bu usersAnswer


      ID	Name	QuestionFor
      --> bu da questionList tablom hocam

      2.tablodaki ID ve ilk tablodaki QuestionID ilişkili.

      ilk tablodaki QuestionID değerlerini 1.tablodan eleyip getirmem lazım

      yardım edersen çok mutlu olurum tapsin
      10 yıl önce yazılmış
    • tapsin adlı üyenin fotoğrafı tapsin
      select questionList.* from userAnswer,questionList where userAnswer.QuestionID!=questionList.ID
      10 yıl önce yazılmış
    • tapsin adlı üyenin fotoğrafı tapsin
      Bu koddaki sonuç sana iki tablode ID leri eşleşmeyenleri getirir böylelikle daha önce cevap verilmeyen soruları alır getirir..


      select questionList.* from userAnswer,questionList where userAnswer.QuestionID!=questionList.ID and FacebookID='21346497964'

      Buda o kullanıcının cevap vermediklerini getirir.
      10 yıl önce yazılmış
    • dejin adlı üyenin fotoğrafı dejin
      Malesef hocam ikincisi yazdığın benim için geçerli olan, denedim fakat ilgili ID'li soruyu yine getirmeye devam ediyor
      10 yıl önce yazılmış
    • tapsin adlı üyenin fotoğrafı tapsin
      ben kendi lokalimde tabloları oluşturup bir bakayım
      10 yıl önce yazılmış
    • tapsin adlı üyenin fotoğrafı tapsin
      SELECT sorular.* FROM sorular,kullanicilar WHERE sorular.id!=kullanicilar.soruid AND FaceID='12313123'

      Şimdi denedim bana sadece cevap verilmemiş soruları getirdi hatta o face
      10 yıl önce yazılmış
    • tapsin adlı üyenin fotoğrafı tapsin
      Muhtemelen senin kullanıcın cevap verdiği sorunun ID sini yazdığın yer başka yer ben ona göre yapmamışımdır..
      select questionList.* from userAnswer,questionList where userAnswer.AnswerID!=questionList.ID and FacebookID='21346497964' 
      

      Bunu denermisin birde.
      10 yıl önce yazılmış
    • dejin adlı üyenin fotoğrafı dejin
      denedim hocam malesef sonuç yine aynı, yine ilgili idli soruları getiriyor,
      bi kaç yerdden WHERE NOT IN metodu okudum o işimizi çözmezmi acaba, ama tam olarak vakıf olmadığım için böyle ilişkili tablo yapılarına kullanamıyorum istediğim gibi
      10 yıl önce yazılmış
    • tapsin adlı üyenin fotoğrafı tapsin
      Senin soruların olduğu tablo hangisi cevap veren kişilerin bilgileri hangisi bunlardan cevap veren kişilerin olduğu tabloda hangi sorulara cevap verildi ise onları yazdığın ID kısmı hangisi ? ayrıca her cevaba bir satırmı oluşturuyorsun
      10 yıl önce yazılmış
    • dejin adlı üyenin fotoğrafı dejin
      Soruları çektiğim tablo: questionList
      Kişilerin cevaplarını yazdığı tablo: usersAnswer

      UserAnswer tablosuna kişi her cevap verdiğinde cevap verdiği sorunun id'si verilen cevabın id'si kişinin userID'si gibi değeleri ekliyorum

      Dediğin gibi her bir cevap için ayrı satır açıyorum hocam, verilen cevapların datası önemli olduğu için daha sonradan kullanacağım çünkü
      10 yıl önce yazılmış
    • tapsin adlı üyenin fotoğrafı tapsin
      Tamam o zaman şu şekilde mantık kurmalısın

      select sorulartablosu.* from sorulartablosu,cevaplartablosu where sorulartablosu.id=cevaplartablosu.id and cevaplartablosu.cevapverennick='işte'


      bu şekilde Teamviewer var ise makinende bağlanıp sorunu sözebilirim..
      10 yıl önce yazılmış

Cevaplar

Hiç cevap bulunamadı.