Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL][PHP]warunek
topik53
post
Post #1





Grupa: Zarejestrowani
Postów: 107
Pomógł: 1
Dołączył: 3.06.2010

Ostrzeżenie: (0%)
-----


Witam.
W bazie danych mam dwie tabele
1.Wyniki
2.Podane
w skrypcie php wysyłam liczby do tabeli podane.
W następnym sprawdzam czy wyniki=podane.
i tu zaczynają sie schody ponieważ zrobiłem system punktów, np jezeli podam 6 i bedą sie pokrywac ze soba dostane 6 pkt. i tak dalej.
ale przy 5,4,3,2 prawydłowych wynikach(przy sprawdzaniu ich) mam problem poniewarz w zapytaniu Sql mysze podać warunek (WHERE)
lecz przy 5 poprawnych jest wiele możliwosci .bo jezeli wylosuje 1 2 3 4 5 6 ... a podam 3 4 2 1 5 to taki:
  1. WHERE
  2. ((user.liczba1=wyniki.l1) AND (user.liczba2=wyniki.l2) AND (user.liczba3=wyniki.l3) AND (user.liczba4=wyniki.l4) AND (user.liczba5=wyniki.l5) AND (user.liczba6<>wyniki.l6) AND wyniki.id = (SELECT max(wyniki.id) FROM wyniki)
  3. OR
  4. (user.liczba1=wyniki.l2) AND (user.liczba2=wyniki.l3) AND ( user.liczba3=wyniki.l4) AND (user.liczba4=wyniki.l5) AND (user.liczba5=wyniki.l6) AND (user.liczba6<>wyniki.l1) AND wyniki.id = (SELECT max(wyniki.id) FROM wyniki)
  5. OR
  6. (user.liczba1=wyniki.l3) AND (user.liczba2=wyniki.l4) AND ( user.liczba3=wyniki.l5) AND (user.liczba4=wyniki.l6) AND (user.liczba5=wyniki.l1) AND (user.liczba6<>wyniki.l2) AND wyniki.id = (SELECT max(wyniki.id) FROM wyniki)
  7. OR
  8. (user.liczba1=wyniki.l4) AND (user.liczba2=wyniki.l5) AND ( user.liczba3=wyniki.l6) AND (user.liczba4=wyniki.l1) AND (user.liczba5=wyniki.l2) AND (user.liczba6<>wyniki.l3) AND wyniki.id = (SELECT max(wyniki.id) FROM wyniki)
  9. OR
  10. (user.liczba1=wyniki.l5) AND (user.liczba2=wyniki.l6) AND ( user.liczba3=wyniki.l1) AND (user.liczba4=wyniki.l2) AND (user.liczba5=wyniki.l3) AND (user.liczba6<>wyniki.l4) AND wyniki.id = (SELECT max(wyniki.id) FROM wyniki)
  11. OR
  12. (user.liczba1=wyniki.l6) AND (user.liczba2=wyniki.l1) AND ( user.liczba3=wyniki.l2) AND (user.liczba4=wyniki.l3) AND (user.liczba5=wyniki.l4) AND (user.liczba6<>wyniki.l5) AND wyniki.id = (SELECT max(wyniki.id) FROM wyniki))
  13.  
  14. OR
  15.  
  16. ((user.liczba1=wyniki.l1) AND (user.liczba2=wyniki.l2) AND (user.liczba3=wyniki.l3) AND (user.liczba4=wyniki.l4) AND (user.liczba5<>wyniki.l5) AND (user.liczba6=wyniki.l6) AND wyniki.id = (SELECT max(wyniki.id) FROM wyniki)
  17. OR
  18. (user.liczba1=wyniki.l2) AND (user.liczba2=wyniki.l3) AND ( user.liczba3=wyniki.l4) AND (user.liczba4=wyniki.l5) AND (user.liczba5<>wyniki.l6) AND (user.liczba6=wyniki.l1) AND wyniki.id = (SELECT max(wyniki.id) FROM wyniki)
  19. OR
  20. (user.liczba1=wyniki.l3) AND (user.liczba2=wyniki.l4) AND ( user.liczba3=wyniki.l5) AND (user.liczba4=wyniki.l6) AND (user.liczba5<>wyniki.l1) AND (user.liczba6=wyniki.l2) AND wyniki.id = (SELECT max(wyniki.id) FROM wyniki)
  21. OR
  22. (user.liczba1=wyniki.l4) AND (user.liczba2=wyniki.l5) AND ( user.liczba3=wyniki.l6) AND (user.liczba4=wyniki.l1) AND (user.liczba5<>wyniki.l2) AND (user.liczba6=wyniki.l3) AND wyniki.id = (SELECT max(wyniki.id) FROM wyniki)
  23. OR
  24. (user.liczba1=wyniki.l5) AND (user.liczba2=wyniki.l6) AND ( user.liczba3=wyniki.l1) AND (user.liczba4=wyniki.l2) AND (user.liczba5<>wyniki.l3) AND (user.liczba6=wyniki.l4) AND wyniki.id = (SELECT max(wyniki.id) FROM wyniki)
  25. OR
  26. (user.liczba1=wyniki.l6) AND (user.liczba2=wyniki.l1) AND ( user.liczba3=wyniki.l2) AND (user.liczba4=wyniki.l3) AND (user.liczba5<>wyniki.l4) AND (user.liczba6=wyniki.l5) AND wyniki.id = (SELECT max(wyniki.id) FROM wyniki))
  27.  
  28. OR
  29.  
  30. ((user.liczba1=wyniki.l1) AND (user.liczba2=wyniki.l2) AND (user.liczba3=wyniki.l3) AND (user.liczba4<>wyniki.l4) AND (user.liczba5=wyniki.l5) AND (user.liczba6=wyniki.l6) AND wyniki.id = (SELECT max(wyniki.id) FROM wyniki)
  31. OR
  32. (user.liczba1=wyniki.l2) AND (user.liczba2=wyniki.l3) AND ( user.liczba3=wyniki.l4) AND (user.liczba4<>wyniki.l5) AND (user.liczba5=wyniki.l6) AND (user.liczba6=wyniki.l1) AND wyniki.id = (SELECT max(wyniki.id) FROM wyniki)
  33. OR
  34. (user.liczba1=wyniki.l3) AND (user.liczba2=wyniki.l4) AND ( user.liczba3=wyniki.l5) AND (user.liczba4<>wyniki.l6) AND (user.liczba5=wyniki.l1) AND (user.liczba6=wyniki.l2) AND wyniki.id = (SELECT max(wyniki.id) FROM wyniki)
  35. OR
  36. (user.liczba1=wyniki.l4) AND (user.liczba2=wyniki.l5) AND ( user.liczba3=wyniki.l6) AND (user.liczba4<>wyniki.l1) AND (user.liczba5=wyniki.l2) AND (user.liczba6=wyniki.l3) AND wyniki.id = (SELECT max(wyniki.id) FROM wyniki)
  37. OR
  38. (user.liczba1=wyniki.l5) AND (user.liczba2=wyniki.l6) AND ( user.liczba3=wyniki.l1) AND (user.liczba4<>wyniki.l2) AND (user.liczba5=wyniki.l3) AND (user.liczba6=wyniki.l4) AND wyniki.id = (SELECT max(wyniki.id) FROM wyniki)
  39. OR
  40. (user.liczba1=wyniki.l6) AND (user.liczba2=wyniki.l1) AND ( user.liczba3=wyniki.l2) AND (user.liczba4<>wyniki.l3) AND (user.liczba5=wyniki.l4) AND (user.liczba6=wyniki.l5) AND wyniki.id = (SELECT max(wyniki.id) FROM wyniki))
  41.  
  42. OR
  43.  
  44. ((user.liczba1=wyniki.l1) AND (user.liczba2=wyniki.l2) AND (user.liczba3<>wyniki.l3) AND (user.liczba4=wyniki.l4) AND (user.liczba5=wyniki.l5) AND (user.liczba6=wyniki.l6) AND wyniki.id = (SELECT max(wyniki.id) FROM wyniki)
  45. OR
  46. (user.liczba1=wyniki.l2) AND (user.liczba2=wyniki.l3) AND ( user.liczba3<>wyniki.l4) AND (user.liczba4=wyniki.l5) AND (user.liczba5=wyniki.l6) AND (user.liczba6=wyniki.l1) AND wyniki.id = (SELECT max(wyniki.id) FROM wyniki)
  47. OR
  48. (user.liczba1=wyniki.l3) AND (user.liczba2=wyniki.l4) AND ( user.liczba3<>wyniki.l5) AND (user.liczba4=wyniki.l6) AND (user.liczba5=wyniki.l1) AND (user.liczba6=wyniki.l2) AND wyniki.id = (SELECT max(wyniki.id) FROM wyniki)
  49. OR
  50. (user.liczba1=wyniki.l4) AND (user.liczba2=wyniki.l5) AND ( user.liczba3<>wyniki.l6) AND (user.liczba4=wyniki.l1) AND (user.liczba5=wyniki.l2) AND (user.liczba6=wyniki.l3) AND wyniki.id = (SELECT max(wyniki.id) FROM wyniki)
  51. OR
  52. (user.liczba1=wyniki.l5) AND (user.liczba2=wyniki.l6) AND ( user.liczba3<>wyniki.l1) AND (user.liczba4=wyniki.l2) AND (user.liczba5=wyniki.l3) AND (user.liczba6=wyniki.l4) AND wyniki.id = (SELECT max(wyniki.id) FROM wyniki)
  53. OR
  54. (user.liczba1=wyniki.l6) AND (user.liczba2=wyniki.l1) AND ( user.liczba3<>wyniki.l2) AND (user.liczba4=wyniki.l3) AND (user.liczba5=wyniki.l4) AND (user.liczba6=wyniki.l5) AND wyniki.id = (SELECT max(wyniki.id) FROM wyniki))
  55.  
  56. OR
  57.  
  58. ((user.liczba1=wyniki.l1) AND (user.liczba2<>wyniki.l2) AND (user.liczba3=wyniki.l3) AND (user.liczba4=wyniki.l4) AND (user.liczba5=wyniki.l5) AND (user.liczba6=wyniki.l6) AND wyniki.id = (SELECT max(wyniki.id) FROM wyniki)
  59. OR
  60. (user.liczba1=wyniki.l2) AND (user.liczba2<>wyniki.l3) AND ( user.liczba3=wyniki.l4) AND (user.liczba4=wyniki.l5) AND (user.liczba5=wyniki.l6) AND (user.liczba6=wyniki.l1) AND wyniki.id = (SELECT max(wyniki.id) FROM wyniki)
  61. OR
  62. (user.liczba1=wyniki.l3) AND (user.liczba2<>wyniki.l4) AND ( user.liczba3=wyniki.l5) AND (user.liczba4=wyniki.l6) AND (user.liczba5=wyniki.l1) AND (user.liczba6=wyniki.l2) AND wyniki.id = (SELECT max(wyniki.id) FROM wyniki)
  63. OR
  64. (user.liczba1=wyniki.l4) AND (user.liczba2<>wyniki.l5) AND ( user.liczba3=wyniki.l6) AND (user.liczba4=wyniki.l1) AND (user.liczba5=wyniki.l2) AND (user.liczba6=wyniki.l3) AND wyniki.id = (SELECT max(wyniki.id) FROM wyniki)
  65. OR
  66. (user.liczba1=wyniki.l5) AND (user.liczba2<>wyniki.l6) AND ( user.liczba3=wyniki.l1) AND (user.liczba4=wyniki.l2) AND (user.liczba5=wyniki.l3) AND (user.liczba6=wyniki.l4) AND wyniki.id = (SELECT max(wyniki.id) FROM wyniki)
  67. OR
  68. (user.liczba1=wyniki.l6) AND (user.liczba2<>wyniki.l1) AND ( user.liczba3=wyniki.l2) AND (user.liczba4=wyniki.l3) AND (user.liczba5=wyniki.l4) AND (user.liczba6=wyniki.l5) AND wyniki.id = (SELECT max(wyniki.id) FROM wyniki))
  69.  
  70. OR
  71.  
  72. ((user.liczba1<>wyniki.l1) AND (user.liczba2=wyniki.l2) AND (user.liczba3=wyniki.l3) AND (user.liczba4=wyniki.l4) AND (user.liczba5=wyniki.l5) AND (user.liczba6=wyniki.l6) AND wyniki.id = (SELECT max(wyniki.id) FROM wyniki)
  73. OR
  74. (user.liczba1<>wyniki.l2) AND (user.liczba2=wyniki.l3) AND ( user.liczba3=wyniki.l4) AND (user.liczba4=wyniki.l5) AND (user.liczba5=wyniki.l6) AND (user.liczba6=wyniki.l1) AND wyniki.id = (SELECT max(wyniki.id) FROM wyniki)
  75. OR
  76. (user.liczba1<>wyniki.l3) AND (user.liczba2=wyniki.l4) AND ( user.liczba3=wyniki.l5) AND (user.liczba4=wyniki.l6) AND (user.liczba5=wyniki.l1) AND (user.liczba6=wyniki.l2) AND wyniki.id = (SELECT max(wyniki.id) FROM wyniki)
  77. OR
  78. (user.liczba1<>wyniki.l4) AND (user.liczba2=wyniki.l5) AND ( user.liczba3=wyniki.l6) AND (user.liczba4=wyniki.l1) AND (user.liczba5=wyniki.l2) AND (user.liczba6=wyniki.l3) AND wyniki.id = (SELECT max(wyniki.id) FROM wyniki)
  79. OR
  80. (user.liczba1<>wyniki.l5) AND (user.liczba2=wyniki.l6) AND ( user.liczba3=wyniki.l1) AND (user.liczba4=wyniki.l2) AND (user.liczba5=wyniki.l3) AND (user.liczba6=wyniki.l4) AND wyniki.id = (SELECT max(wyniki.id) FROM wyniki)
  81. OR
  82. (user.liczba1<>wyniki.l6) AND (user.liczba2=wyniki.l1) AND ( user.liczba3=wyniki.l2) AND (user.liczba4=wyniki.l3) AND (user.liczba5=wyniki.l4) AND (user.liczba6=wyniki.l5) AND wyniki.id = (SELECT max(wyniki.id) FROM wyniki))
warunek nie wystarcza.. co moge zrobic?

Bring
Up
My
Post
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
topik53
post
Post #2





Grupa: Zarejestrowani
Postów: 107
Pomógł: 1
Dołączył: 3.06.2010

Ostrzeżenie: (0%)
-----


Dokładnie... chcę poćwiczyć jak widać... ale nie jest łatwo
@filip jak mam tu wykorzystać IN'a;/
#Edit
Zaraz spróbuje to zrozumieć .... ;] jak jakieś problemy będę miał to napisze... dziękuje... dam pomógł jak zaranie;]
Pozdrawiam
topik53
#Edit2
Daczego nie zwraca mi loginu jezeli user.liczba1=0,user.liczba2=2,user.liczba3=0,user.liczba4=4,user.liczba5=5,user.
liczba6=6
wyniki.l1=1,wyniki.l2=2,wyniki.l3=3,wyniki.4=4,wyniki.l5=5,wyniki.l6=6,
a mam taki warunek
  1. SELECT login FROM `user`, `wyniki`
  2. WHERE
  3. (
  4. user.liczba1 IN(wyniki.l1,wyniki.l2,wyniki.l3,wyniki.l4) AND wyniki.id = (SELECT max(wyniki.id) FROM wyniki)
  5. OR
  6. user.liczba1 IN(wyniki.l1,wyniki.l2,wyniki.l3,wyniki.l5) AND wyniki.id = (SELECT max(wyniki.id) FROM wyniki)
  7. OR
  8. user.liczba1 IN(wyniki.l1,wyniki.l2,wyniki.l5,wyniki.l6) AND wyniki.id = (SELECT max(wyniki.id) FROM wyniki)
  9. OR
  10. user.liczba1 IN(wyniki.l1,wyniki.l4,wyniki.l5,wyniki.l6) AND wyniki.id = (SELECT max(wyniki.id) FROM wyniki)
  11. OR
  12. user.liczba1 IN(wyniki.l3,wyniki.l4,wyniki.l5,wyniki.l6) AND wyniki.id = (SELECT max(wyniki.id) FROM wyniki)
  13. )
  14.  
  15. AND
  16.  
  17. (
  18. user.liczba2 IN(wyniki.l1,wyniki.l2,wyniki.l3,wyniki.l4) AND wyniki.id = (SELECT max(wyniki.id) FROM wyniki)
  19. OR
  20. user.liczba2 IN(wyniki.l1,wyniki.l2,wyniki.l3,wyniki.l5) AND wyniki.id = (SELECT max(wyniki.id) FROM wyniki)
  21. OR
  22. user.liczba2 IN(wyniki.l1,wyniki.l2,wyniki.l5,wyniki.l6) AND wyniki.id = (SELECT max(wyniki.id) FROM wyniki)
  23. OR
  24. user.liczba2 IN(wyniki.l1,wyniki.l4,wyniki.l5,wyniki.l6) AND wyniki.id = (SELECT max(wyniki.id) FROM wyniki)
  25. OR
  26. user.liczba2 IN(wyniki.l3,wyniki.l4,wyniki.l5,wyniki.l6) AND wyniki.id = (SELECT max(wyniki.id) FROM wyniki)
  27. )
  28.  
  29. AND
  30.  
  31. (
  32. user.liczba3 IN(wyniki.l1,wyniki.l2,wyniki.l3,wyniki.l4) AND wyniki.id = (SELECT max(wyniki.id) FROM wyniki)
  33. OR
  34. user.liczba3 IN(wyniki.l1,wyniki.l2,wyniki.l3,wyniki.l5) AND wyniki.id = (SELECT max(wyniki.id) FROM wyniki)
  35. OR
  36. user.liczba3 IN(wyniki.l1,wyniki.l2,wyniki.l5,wyniki.l6) AND wyniki.id = (SELECT max(wyniki.id) FROM wyniki)
  37. OR
  38. user.liczba3 IN(wyniki.l1,wyniki.l4,wyniki.l5,wyniki.l6) AND wyniki.id = (SELECT max(wyniki.id) FROM wyniki)
  39. OR
  40. user.liczba3 IN(wyniki.l3,wyniki.l4,wyniki.l5,wyniki.l6) AND wyniki.id = (SELECT max(wyniki.id) FROM wyniki)
  41. )
  42.  
  43. AND
  44.  
  45. (
  46. user.liczba4 IN(wyniki.l1,wyniki.l2,wyniki.l3,wyniki.l4) AND wyniki.id = (SELECT max(wyniki.id) FROM wyniki)
  47. OR
  48. user.liczba4 IN(wyniki.l1,wyniki.l2,wyniki.l3,wyniki.l5) AND wyniki.id = (SELECT max(wyniki.id) FROM wyniki)
  49. OR
  50. user.liczba4 IN(wyniki.l1,wyniki.l2,wyniki.l5,wyniki.l6) AND wyniki.id = (SELECT max(wyniki.id) FROM wyniki)
  51. OR
  52. user.liczba4 IN(wyniki.l1,wyniki.l4,wyniki.l5,wyniki.l6) AND wyniki.id = (SELECT max(wyniki.id) FROM wyniki)
  53. OR
  54. user.liczba4 IN(wyniki.l3,wyniki.l4,wyniki.l5,wyniki.l6) AND wyniki.id = (SELECT max(wyniki.id) FROM wyniki)
  55. )
  56.  
  57. AND
  58.  
  59. (
  60. user.liczba5 IN(wyniki.l1,wyniki.l2,wyniki.l3,wyniki.l4) AND wyniki.id = (SELECT max(wyniki.id) FROM wyniki)
  61. OR
  62. user.liczba5 IN(wyniki.l1,wyniki.l2,wyniki.l3,wyniki.l5) AND wyniki.id = (SELECT max(wyniki.id) FROM wyniki)
  63. OR
  64. user.liczba5 IN(wyniki.l1,wyniki.l2,wyniki.l5,wyniki.l6) AND wyniki.id = (SELECT max(wyniki.id) FROM wyniki)
  65. OR
  66. user.liczba5 IN(wyniki.l1,wyniki.l4,wyniki.l5,wyniki.l6) AND wyniki.id = (SELECT max(wyniki.id) FROM wyniki)
  67. OR
  68. user.liczba5 IN(wyniki.l3,wyniki.l4,wyniki.l5,wyniki.l6) AND wyniki.id = (SELECT max(wyniki.id) FROM wyniki)
  69. )
  70.  
  71. AND
  72.  
  73. (
  74. user.liczba6 IN(wyniki.l1,wyniki.l2,wyniki.l3,wyniki.l4) AND wyniki.id = (SELECT max(wyniki.id) FROM wyniki)
  75. OR
  76. user.liczba6 IN(wyniki.l1,wyniki.l2,wyniki.l3,wyniki.l5) AND wyniki.id = (SELECT max(wyniki.id) FROM wyniki)
  77. OR
  78. user.liczba6 IN(wyniki.l1,wyniki.l2,wyniki.l5,wyniki.l6) AND wyniki.id = (SELECT max(wyniki.id) FROM wyniki)
  79. OR
  80. user.liczba6 IN(wyniki.l1,wyniki.l4,wyniki.l5,wyniki.l6) AND wyniki.id = (SELECT max(wyniki.id) FROM wyniki)
  81. OR
  82. user.liczba6 IN(wyniki.l3,wyniki.l4,wyniki.l5,wyniki.l6) AND wyniki.id = (SELECT max(wyniki.id) FROM wyniki)
  83. )


BUMP

Ten post edytował topik53 8.07.2010, 16:46:04
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 26.12.2025 - 11:20