Avatar billede arnor Nybegynder
10. september 2005 - 16:17 Der er 8 kommentarer

select sql

jeg har denne tabel med dette indehold

mysql> select * from Frequents;
+---------+------+
| drinker | bar  |
+---------+------+
| Vince  | Vbar |
| kjr    | Vbar |
| Herb    | hbar |
| Herb    | vbar |
| Herb    | Vbar |
+---------+------+

Jeg vil hente bar navn for den bar både Herb og Vince har besøgt, og har brugt denne. select

SELECT bar
FROM Frequents
WHERE (drinker='Herb' AND drinker='Vince');

Den returnerer ingenting.

Har nogen bud på hva er galt?
Avatar billede jaw Nybegynder
10. september 2005 - 16:24 #1
Prøv:
SELECT bar
FROM Frequents
WHERE (drinker='Herb' OR drinker='Vince');
Avatar billede arnor Nybegynder
10. september 2005 - 16:29 #2
Det giver alle barnavne for dem som de har besøgt, jeg skal kun have det barnavn som de begge har besøgt her fx. ønskede res er "Vbar"
Avatar billede arnor Nybegynder
10. september 2005 - 16:30 #3
+------+
| bar  |
+------+
| Vbar |
| hbar |
| vbar |
| Vbar |
+------+
Avatar billede simonvalter Praktikant
10. september 2005 - 17:57 #4
SELECT f1.bar
FROM  `Frequents` f1,  `Frequents` f2
WHERE f1.bar = f2.bar AND f1.drinker =  'Vince' AND f2.drinker =  'Herb'
Avatar billede claesdamlund Nybegynder
11. september 2005 - 13:35 #5
Det du søger lyder som en simpel "Divide" (mængdelæren):

select bar
from frequents f_1
where not exists(
  select *
  from frequents f_2
  where drinker in('Vince', 'Herb') and not exists(
      select *
      from frequents f_3
      where f_3.drinker = f_2.drinker
        and f_3.bar = f_1.bar))

Du kan evt lave en Distinct dvs Select Distinct bar...osv
Avatar billede simonvalter Praktikant
11. september 2005 - 15:18 #6
det vil så kun virke under mysql 5.0
Avatar billede claesdamlund Nybegynder
11. september 2005 - 18:04 #7
Understøtter tidligere versioner af MySQL ikke Exists og subselects?
Avatar billede simonvalter Praktikant
11. september 2005 - 20:46 #8
sorry, det er fra 4.1 at der er subselects.
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