Avatar billede gulvflaesk Nybegynder
09. juli 2013 - 13:47 Der er 9 kommentarer og
1 løsning

Få specifikke resultater fra MySQL-query

Hej Eksperter

Jeg har et problem. Jeg vil gerne have de rette rækker frem, men det ser ikke ud til at virke. Kan I mon hjælpe mig lidt på vej?

Jeg skal have lavet en hvor rækkerne kun kommer frem og en hvor de ikke kommer frem.

Jeg har selv forsøgt mig ud i dette:

SELECT * FROM system_bookings WHERE accepted !='no' OR accepted !='cancelled' OR paid !='yes' ORDER BY id DESC

Håber i kan hjælpe, på trods af sommervarmen :)
Avatar billede michael_stim Ekspert
09. juli 2013 - 13:51 #1
Så er spørgsmålet bare, hvilke er de rette rækker???
Avatar billede michael_stim Ekspert
09. juli 2013 - 13:54 #2
SELECT * FROM system_bookings WHERE (accepted !='no' OR accepted !='cancelled') AND paid !='yes' ORDER BY id DESC

Men det er rent gætteri.
Avatar billede gulvflaesk Nybegynder
09. juli 2013 - 14:19 #3
Hej Michael

Kan godt forstå forvirringen.

Der må hverken være 'no' eller 'cancelled' i 'accepted' eller 'yes' i 'paid'. Altså den skal vise de rækker hvor det ikke er tilfældet.
Avatar billede michael_stim Ekspert
09. juli 2013 - 14:21 #4
Så burde den fungere i #2
Avatar billede gulvflaesk Nybegynder
09. juli 2013 - 15:05 #5
Hej Michael

Det virker ikke. Den fjerner kun den hvor 'paid' er = 'yes'.
Avatar billede michael_stim Ekspert
09. juli 2013 - 15:18 #6
Så se om no eller cancelled står rigtigt i din tabel. Tænk på store og små bogstaver.
Avatar billede gulvflaesk Nybegynder
09. juli 2013 - 15:50 #7
Det står rigtigt nok.

Jeg tror det er det med at 'paid' skal være 'yes' der gør det. Kan den ikke se sådan ud at det er fuldstændig ligegyldigt hvilke af de tre felter som har den givne værdi?
Avatar billede gulvflaesk Nybegynder
09. juli 2013 - 16:04 #8
Hvordan kan man lave en SQL query, som bare udelukker to muligheder.

SELECT * FROM systems_bookings WHERE id = '".$_GET['id']."' OG UDELAD HVIS paid = yes OG HVIS accepted = cancelled

Altså de kan ikke begge være opfyldt. Enten er den yes i paid eller cancelled i accepted.

Det er virkelig svært for mig at forklare, og har googlet løs :)
Avatar billede gulvflaesk Nybegynder
09. juli 2013 - 17:22 #9
Fandt denne:

select * from table1 where not (column1 like '%value1%' or column1 like '%value2%' or column1 like'%value3%');

Det virkede :)

Michael, tak for din hjælp! Hvis du vil have point så smid et svar ;)
Avatar billede gulvflaesk Nybegynder
24. juli 2013 - 10:36 #10
Lukker ;)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester