Kom ihåg mig?
Home Menu

Menu


MySQL förklaring på Intersection och Union

 
Ämnesverktyg Visningsalternativ
Oläst 2010-01-17, 22:39 #1
grinditwp grinditwp är inte uppkopplad
Flitig postare
 
Reg.datum: Mar 2008
Inlägg: 320
grinditwp grinditwp är inte uppkopplad
Flitig postare
 
Reg.datum: Mar 2008
Inlägg: 320
förstår inte riktigt...

låt oss säga att jag vill hitta alla bookmarks med taggarna BOLL och SPORT.

Då fungerar;

PHP-kod:
SELECT b.*
FROM tagmap btbookmark btag t
WHERE bt
.tag_id t.tag_id
AND (t.name IN ('boll''sport'))
AND 
b.id bt.bookmark_id
GROUP BY b
.id
HAVING COUNT
b.id )=
och jag hittar 1 bookmark, för det finns bara 1 bookmark med dessa två taggarna. Det finns flera bookmarks med taggen SPORT. So far so good!

Men låt oss testa systemet, söker jag på BOLL och KJHAJSGHAGS, vart på KJHAJSGHAGS är en tagg jag vet INTE existerar.

PHP-kod:
SELECT b.*
FROM tagmap btbookmark btag t
WHERE bt
.tag_id t.tag_id
AND (t.name IN ('boll''KJHAJSGHAGS'))
AND 
b.id bt.bookmark_id
GROUP BY b
.id
HAVING COUNT
b.id )=
..så hittar jag fortfarande en bookmark. Samma som vid första sökningen.... varför?

För att göra det ännu snurrigare och testar att lägga till en tagg till vi vet inte existerar.

PHP-kod:
SELECT b.*
FROM tagmap btbookmark btag t
WHERE bt
.tag_id t.tag_id
AND (t.name IN ('boll''KJHAJSGHAGS''AAAKJSL'))
AND 
b.id bt.bookmark_id
GROUP BY b
.id
HAVING COUNT
b.id )=
..så hittar vi inget. Som vi förväntat oss redan i exempel 2.

Senast redigerad av grinditwp den 2010-01-17 klockan 22:43
grinditwp är inte uppkopplad   Svara med citatSvara med citat
Svara


Aktiva användare som för närvarande tittar på det här ämnet: 1 (0 medlemmar och 1 gäster)
 

Regler för att posta
Du får inte posta nya ämnen
Du får inte posta svar
Du får inte posta bifogade filer
Du får inte redigera dina inlägg

BB-kod är
Smilies är
[IMG]-kod är
HTML-kod är av

Forumhopp


Alla tider är GMT +2. Klockan är nu 20:37.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson
 
Copyright © 2017