Rezultate 1 la 6 din 6

Subiect: Intrebare mysql

Afișare hibrid

  1. #1
    Avatarul lui Cristi G
    Cristi G este deconectat Membru SeoPedia
    Reputatie:
    49
    Data înscrierii
    16th April 2009
    Locaţie
    Iasi
    Vârstă
    33
    Posturi
    1.664
    Putere Rep
    49


    Implicit Intrebare mysql

    Am o baza de date cu intrebari structurata cam asa:

    questions :

    id
    question
    answer1
    answer2
    answer3
    answer4
    answer5
    nranswers

    si o baza de date cu raspunsuri, structurata asa :

    answers

    id
    userid
    questionid
    answer


    Vreau, pentru o intrebare oarecare, sa selectez cati utilizatori au raspuns cu optiunea 1, cati cu optiunea 2, cati cu optiunea X (X poate ajunge la maxim nranswers pt acea intrebare)

    Queryul acesta il folosesc eu :

    SELECT answer,count(answer) FROM answers WHERE question=22 GROUP BY answer ORDER BY answer

    dar imi returneaza doar pentru optiunile care au fost selectate. De ex daca un sg utilizator a votat pt optiunea 5, doar optiunea 5 apare acolo

    Eu vreau sa-mi apara

    1-0
    2-0
    3-0
    4-0
    5-1

    (In dreapta apare de cate ori a fost aleasa acea optiune)

    Va rog frumos, care ma poate ajuta cu un query care sa mearga pt ceea ce vreau eu.... Daca exista pt toate minim 1 alegere, apar toate, dar daca au fost alese doar 1 sau 2, restul 3 nu mai apar cu 0 alegeri.
    Imi ocup timpul uneori cu pariuri sportive si fac si web development WordPress.

  2. #2
    Avatarul lui attempt
    attempt este deconectat Membru SeoPedia
    Reputatie:
    38
    Data înscrierii
    12th February 2007
    Locaţie
    Satu Mare
    Vârstă
    44
    Posturi
    490
    Putere Rep
    38


    Implicit

    Nu ma stiu in domeniu dar:
    http://lichao.net/eblog/how-to-displ...200808164.html

    ideea este ca de la asta:
    Cod:
    SELECT Region, Count(Amount) AS Total
    From Sales
    Where Amount > 1000
    Group By Region_ID
    trebuie ajuns la asta:
    Cod:
    SELECT Region.Region_Name, NVL(SubTotal.Total,0) As SalesTotal
    From Region
    Left Join
    (SELECT Region_ID, Count(Sales.Amount) As Total
    From Sales
    Where Amount > 1000
    Group By Region_ID) SubTotal
    On Region.Region_id = SubTotal.Region_ID

  3. #3
    Avatarul lui dublutz
    dublutz este deconectat Membru SeoPedia
    Reputatie:
    35
    Data înscrierii
    3rd October 2007
    Vârstă
    42
    Posturi
    175
    Putere Rep
    35


    Implicit

    Structura tabelelor nu te ajuta prea mult. Ce faci daca ai 6 raspunsuri pentru o intrebare?
    Daca vrei sa primesti un rezultat de genul ala trebuie sa ai 3 tabele. Oricum intrebare si raspuns sunt doua entitati diferite.

    1. question(id_question, question)
    2. answer(id_answer, id_question, answer)
    3. user_answer(id_user_answer, id_answer, id_user)

    Si query
    SELECT a.answer, count(ua.id_user_answer)
    FROM answer a LEFT JOIN user_answer ua USING(id_answer)
    WHERE a.id_question = ?
    GROUP BY a.id_answer

    Cam asa ceva. Nu am testat...

  4. #4
    Avatarul lui Cristi G
    Cristi G este deconectat Membru SeoPedia
    Reputatie:
    49
    Data înscrierii
    16th April 2009
    Locaţie
    Iasi
    Vârstă
    33
    Posturi
    1.664
    Putere Rep
    49


    Implicit

    Citat Postat în original de dublutz Vezi Post
    Structura tabelelor nu te ajuta prea mult. Ce faci daca ai 6 raspunsuri pentru o intrebare?
    Daca vrei sa primesti un rezultat de genul ala trebuie sa ai 3 tabele. Oricum intrebare si raspuns sunt doua entitati diferite.

    1. question(id_question, question)
    2. answer(id_answer, id_question, answer)
    3. user_answer(id_user_answer, id_answer, id_user)

    Si query
    SELECT a.answer, count(ua.id_user_answer)
    FROM answer a LEFT JOIN user_answer ua USING(id_answer)
    WHERE a.id_question = ?
    GROUP BY a.id_answer

    Cam asa ceva. Nu am testat...
    A mers! Multumesc mult!
    Imi ocup timpul uneori cu pariuri sportive si fac si web development WordPress.

  5. #5
    Avatarul lui Cristi G
    Cristi G este deconectat Membru SeoPedia
    Reputatie:
    49
    Data înscrierii
    16th April 2009
    Locaţie
    Iasi
    Vârstă
    33
    Posturi
    1.664
    Putere Rep
    49


    Implicit

    Am doar 5 raspunsuri, maxim !
    Imi ocup timpul uneori cu pariuri sportive si fac si web development WordPress.

  6. #6
    Avatarul lui Cristi G
    Cristi G este deconectat Membru SeoPedia
    Reputatie:
    49
    Data înscrierii
    16th April 2009
    Locaţie
    Iasi
    Vârstă
    33
    Posturi
    1.664
    Putere Rep
    49


    Implicit

    Nu m-am descurcat queryul lui attempt, alte idei are cineva?

    P.S. As dori sa se aplice pe tabelele mele, fara sa creez eu alte tabele.
    Imi ocup timpul uneori cu pariuri sportive si fac si web development WordPress.

Informații subiect

Utilizatori care navighează în acest subiect

Momentan este/sunt 1 utilizator(i) care navighează în acest subiect. (0 membrii și 1 vizitatori)

Thread-uri Similare

  1. Selectie In Mysql
    De CrazyDogster în forumul Server side
    Răspunsuri: 8
    Ultimul Post: 3rd August 2008, 12:48
  2. programator php / mysql
    De charlieking în forumul Server side
    Răspunsuri: 1
    Ultimul Post: 8th June 2008, 09:37
  3. mysql & phpmyadmin
    De Adrian Poputoaia în forumul Bar, lobby...
    Răspunsuri: 5
    Ultimul Post: 15th April 2008, 01:36
  4. SUN a cumparat MySQL
    De Netul în forumul Server side
    Răspunsuri: 3
    Ultimul Post: 11th April 2008, 11:04
  5. mysql query
    De phane în forumul Server side
    Răspunsuri: 9
    Ultimul Post: 25th April 2006, 12:35

Permisiuni postare

  • Nu puteţi posta subiecte noi.
  • Nu puteţi răspunde la subiecte
  • Nu puteţi adăuga ataşamente
  • Nu puteţi modifica posturile proprii
  •