Black Friday = Pricewatch Bekijk onze selectie van de beste Black Friday-deals en voorkom een miskoop.

[MS SQL] - Query probleem

Pagina: 1
Acties:

  • Nutcaze
  • Registratie: Oktober 1999
  • Laatst online: 06-11 19:57
Ik heb een probleem met 2 een query op 2 tabellen.

Ik heb aan de ene kant een hoofdtabel (laten we 'm tabel noemen) met een veld ID en een veld naam, aan de andere kant heb ik een tabel waar het veld zelfgenoemde veld ID ook in bestaat en meerdere keren kan voorkomen. In deze tabel staat ook een cijfer (we noemen 'm cijfer) (van 1 t/m 6). Nou wil ik alle records uit de eerste tabel die in de tweede tabel niet voorkomen MET bijv. cijfer 6. Ik heb geen flauw idee hoe dit zou moeten. Ik heb al een testscript gedraaid om alle records op te halen en in de loop een query te draaien die kijkt of het bijbehorende record bestaat maar dat scheelt een factor 10 in processing time. Heeft iemand enig idee hoe dat moet?


SELECT id, naam FROM Tabel en dan?

Not all chemicals are bad. Without hydrogen or oxygen, for example, there would be no way to make water, a vital ingredient in beer.


  • whoami
  • Registratie: December 2000
  • Laatst online: 10:22
Met een subquery.

code:
1
SELECT ... FROM tabel WHERE id NOT IN ( SELECT id FROM andere tabel WHERE cijfer = 6 )


Gewoon, eens logisch nadenken, en eens opschrijven wat je nu eigenlijk precies wel (of niet) wil hebben ...

[ Voor 32% gewijzigd door whoami op 08-07-2008 14:19 ]

https://fgheysels.github.io/


  • Niemand_Anders
  • Registratie: Juli 2006
  • Laatst online: 09-07-2024

Niemand_Anders

Dat was ik niet..

Dit is redelijk basic sql. De gemakkelijkste methode is de 'not in' where clausule.

If it isn't broken, fix it until it is..


  • Nutcaze
  • Registratie: Oktober 1999
  • Laatst online: 06-11 19:57
Die had ik ook al staan maar in dat geval krijg ik geen resultaten uit de query terwijl er toch echt vijf records moeten zijn (die komen er namelijk wel uit als ik 'm in de loop opvraag). Ik ga nog eens kijken of ik het probleem anders moet omschrijven.

Not all chemicals are bad. Without hydrogen or oxygen, for example, there would be no way to make water, a vital ingredient in beer.


  • whoami
  • Registratie: December 2000
  • Laatst online: 10:22
Die query is nochtans de oplossing voor het probleem dat je in je TS beschrijft ...

https://fgheysels.github.io/


  • Nutcaze
  • Registratie: Oktober 1999
  • Laatst online: 06-11 19:57
Postcode = "1000AA"

De volgende query levert 0 resultaten:
code:
1
2
3
4
5
6
7
8
9
SELECT DISTINCT ST.StoreID, ST.StoreName
FROM DeliveryZips DZ ,Stores ST,addresses AD, branches BR, branch2Stores BS
WHERE DZ.StoreID = ST.StoreID
AND AD.OwnerID = ST.StoreID
AND BS.StoreID = ST.StoreID
AND BR.BranchID = BS.BranchID
AND '" & Postcode & "' BETWEEN DZ.ZipFrom AND DZ.ZipUntil
AND NOT ST.storeID IN (SELECT storeID FROM OpenTimes WHERE weekday = 6)
ORDER BY storename


Als ik dit echter omschrijf tot:
code:
1
2
3
4
5
6
7
8
SELECT DISTINCT ST.StoreID, ST.StoreName
FROM DeliveryZips DZ ,Stores ST,addresses AD, branches BR, branch2Stores BS
WHERE DZ.StoreID = ST.StoreID
AND AD.OwnerID = ST.StoreID
AND BS.StoreID = ST.StoreID
AND BR.BranchID = BS.BranchID
AND '" & Postcode & "' BETWEEN DZ.ZipFrom AND DZ.ZipUntil
ORDER BY storename


Vervolgens door deze records heenloop en het volgende in die loop plaats:
code:
1
2
3
rsOpeningstijden.Open "SELECT opentimeID FROM OpenTimes WHERE storeID = '" & WinkelID & "' AND weekday = 6", con, adOpenForwardOnly, adLockReadOnly
If rsOpeningstijden.eof Then Meenemen = True Else Meenemen = False
rsOpeningstijden.Close


Dan staat de variabele Meenemen 5 keer op True

Ik zie niet precies wat het verschil is maar het is er kennelijk wel degelijk. Het maakt niets uit wat ik als weekday invul in de bovenste query, er komen altijd 0 resultaten uit en ik zie maar niet wat het verschil is.

Not all chemicals are bad. Without hydrogen or oxygen, for example, there would be no way to make water, a vital ingredient in beer.


  • whoami
  • Registratie: December 2000
  • Laatst online: 10:22
Gebruik eens code-tags voor het posten van code ...
code:
1
AND NOT ST.storeID IN (SELECT storeID FROM OpenTimes WHERE weekday = 6)

:?
Levert dat hetzelfde resultaat op als st.storeID NOT IN ( ... ) ?

https://fgheysels.github.io/


  • Nutcaze
  • Registratie: Oktober 1999
  • Laatst online: 06-11 19:57
whoami schreef op dinsdag 08 juli 2008 @ 15:30:
Gebruik eens code-tags voor het posten van code ...
code:
1
AND NOT ST.storeID IN (SELECT storeID FROM OpenTimes WHERE weekday = 6)

:?
Levert dat hetzelfde resultaat op als st.storeID NOT IN ( ... ) ?
Bij deze.

Ehm even geprobeerd want wist niet zeker of dit inderdaad hetzelfde was (had het ook niet gezien eerlijk gezegd), maar ook dan levert ie geen resultaten op.

Not all chemicals are bad. Without hydrogen or oxygen, for example, there would be no way to make water, a vital ingredient in beer.


  • KopjeThee
  • Registratie: Maart 2005
  • Niet online
Nutcaze schreef op dinsdag 08 juli 2008 @ 15:34:
[...]

Bij deze.

Ehm even geprobeerd want wist niet zeker of dit inderdaad hetzelfde was (had het ook niet gezien eerlijk gezegd), maar ook dan levert ie geen resultaten op.
Kan je niet eens 1 van die 5 gevallen volledig uitpluizen, om te controleren wat het juiste antwoord zou moeten zijn? Of is al bekend dat het loopje het juiste resultaat oplevert?

[ Voor 6% gewijzigd door KopjeThee op 08-07-2008 16:01 ]


  • Nutcaze
  • Registratie: Oktober 1999
  • Laatst online: 06-11 19:57
KopjeThee schreef op dinsdag 08 juli 2008 @ 16:00:
[...]


Kan je niet eens 1 van die 5 gevallen volledig uitpluizen, om te controleren wat het juiste antwoord zou moeten zijn? Of is al bekend dat het loopje het juiste resultaat oplevert?
De loop levert inderdaad het juiste resultaat op.

Not all chemicals are bad. Without hydrogen or oxygen, for example, there would be no way to make water, a vital ingredient in beer.


  • KopjeThee
  • Registratie: Maart 2005
  • Niet online
Nutcaze schreef op dinsdag 08 juli 2008 @ 16:03:
[...]

De loop levert inderdaad het juiste resultaat op.
Ze lijken toch wel erg op elkaar. Heb je al wat geprobeerd te debuggen? Bijvoorbeeld kijken wat er uit de "niet loop" variant komt als je de "where weekday = 6" weg laat. Het lijkt mij dat dat hetzelfde zou moeten zijn als de eerste tabel van de "wel loop" variant (dus voor de loop filtering). (Tenzij niet alle storeid's voorkomen in die openingstijden tabel.)

  • Niemand_Anders
  • Registratie: Juli 2006
  • Laatst online: 09-07-2024

Niemand_Anders

Dat was ik niet..

Moet het niet
SQL:
1
 where StoreID IN (select StoreID from OpenTimes where Weekday <> 6 ) 

worden dan?

Het is namelijk een beetje raar dat je eerst alle winkels opvraagt welke op dag X open zijn en dan deze vervolgens negeert (NOT IN). Bovenstaand levert alle winkels op welke op zijn met uitzondering op dag X.

If it isn't broken, fix it until it is..


  • Nutcaze
  • Registratie: Oktober 1999
  • Laatst online: 06-11 19:57
KopjeThee schreef op dinsdag 08 juli 2008 @ 16:20:
[...]


Ze lijken toch wel erg op elkaar. Heb je al wat geprobeerd te debuggen? Bijvoorbeeld kijken wat er uit de "niet loop" variant komt als je de "where weekday = 6" weg laat. Het lijkt mij dat dat hetzelfde zou moeten zijn als de eerste tabel van de "wel loop" variant (dus voor de loop filtering). (Tenzij niet alle storeid's voorkomen in die openingstijden tabel.)
Als ik de weekday weghaal krijg ik sowieso geen resultaat aangezien ze allemaal wel een dag open zijn. Als ik een innerjoin maak ook op de opentimes tabel krijg ik keurig te zien op welke dagen ze wel of niet open zijn dus ik zou verwachten dat bovenstaande moet werken maar toch ... geen resultaten.

Not all chemicals are bad. Without hydrogen or oxygen, for example, there would be no way to make water, a vital ingredient in beer.


  • Nutcaze
  • Registratie: Oktober 1999
  • Laatst online: 06-11 19:57
Niemand_Anders schreef op dinsdag 08 juli 2008 @ 16:46:
Moet het niet
SQL:
1
 where StoreID IN (select StoreID from OpenTimes where Weekday <> 6 ) 

worden dan?

Het is namelijk een beetje raar dat je eerst alle winkels opvraagt welke op dag X open zijn en dan deze vervolgens negeert (NOT IN). Bovenstaand levert alle winkels op welke op zijn met uitzondering op dag X.
Ik haal eerst alle winkels op uit het bezorggebied en niet diegene die op die dag open zijn. Als ik weekday <> 6 zou gebruiken zou er sowieso geen 1 uitkomen aangezien ze altijd wel een dag open zijn.

Not all chemicals are bad. Without hydrogen or oxygen, for example, there would be no way to make water, a vital ingredient in beer.


  • Cousin Boneless
  • Registratie: Juni 2008
  • Laatst online: 28-02 12:55
Kan het misschien zo zijn je subquery ook NULL waardes teruggeeft, ofwel dat er een record in die tabel OpenTimes staat met voor storeID een waarde NULL?

SQL:
1
(SELECT storeID FROM OpenTimes WHERE weekday = 6)


Dat levert namelijk nooit iets op. In dat geval moet je er dus van maken:

SQL:
1
(SELECT storeID FROM OpenTimes WHERE weekday = 6 and storeID IS NOT NULL)

  • Niemand_Anders
  • Registratie: Juli 2006
  • Laatst online: 09-07-2024

Niemand_Anders

Dat was ik niet..

Nutcaze schreef op dinsdag 08 juli 2008 @ 16:53:
[...]

Ik haal eerst alle winkels op uit het bezorggebied en niet diegene die op die dag open zijn. Als ik weekday <> 6 zou gebruiken zou er sowieso geen 1 uitkomen aangezien ze altijd wel een dag open zijn.
Weekday geeft niet dat openingsdag (OpenTimes!) aan zoals zaterdag, zondag, etc? Weet je wat ik verwacht van een tabel OpenTimes:
OpenTimes
-----------------
OpenTimesID
StoreID
Weekday
OpeningTime
ClosingTime

Op koopavond zal een winkel langer open zijn dan op een andere weekdag. Ook zijn veel winkels op maandag later open dan de rest van de week. Maar wat geeft Weekday=6 dan aan? Want ik maakte de aanname dat hiermee vrijdag werd aangegeven (zondag=1, maandag=2, dinsdag=3, etc).

De subquery (de eerst query uit je tweede reactie) geeft alle winkels terug welke een record met weekday=6 hebben. Dus ook de winkels buiten het zorggebied. Vervolgens draai je middels de 'NOT IN' het resultaat om.

If it isn't broken, fix it until it is..


  • KabouterSuper
  • Registratie: September 2005
  • Niet online
Als je
code:
1
AND NOT ST.storeID IN .....

eens verandert in

code:
1
AND  ST.storeID NOT IN .....


Mijn gok is dat NOT ST.storeID eerst ge-evalueerd wordt voordat deze vergeleken wordt met de subquery.

When life gives you lemons, start a battery factory


  • Nutcaze
  • Registratie: Oktober 1999
  • Laatst online: 06-11 19:57
Cousin Boneless schreef op dinsdag 08 juli 2008 @ 18:34:
Kan het misschien zo zijn je subquery ook NULL waardes teruggeeft, ofwel dat er een record in die tabel OpenTimes staat met voor storeID een waarde NULL?

SQL:
1
(SELECT storeID FROM OpenTimes WHERE weekday = 6)


Dat levert namelijk nooit iets op. In dat geval moet je er dus van maken:

SQL:
1
(SELECT storeID FROM OpenTimes WHERE weekday = 6 and storeID IS NOT NULL)
Nee in die tabel kunnen geen NULL waardes voorkomen.

Not all chemicals are bad. Without hydrogen or oxygen, for example, there would be no way to make water, a vital ingredient in beer.


  • Nutcaze
  • Registratie: Oktober 1999
  • Laatst online: 06-11 19:57
KabouterSuper schreef op woensdag 09 juli 2008 @ 09:12:
Als je
code:
1
AND NOT ST.storeID IN .....

eens verandert in

code:
1
AND  ST.storeID NOT IN .....


Mijn gok is dat NOT ST.storeID eerst ge-evalueerd wordt voordat deze vergeleken wordt met de subquery.
Deze maakte niet uit (tenminste niet voor mijn resultaat dan).

Not all chemicals are bad. Without hydrogen or oxygen, for example, there would be no way to make water, a vital ingredient in beer.


  • Nutcaze
  • Registratie: Oktober 1999
  • Laatst online: 06-11 19:57
Niemand_Anders schreef op woensdag 09 juli 2008 @ 09:06:
[...]

Weekday geeft niet dat openingsdag (OpenTimes!) aan zoals zaterdag, zondag, etc? Weet je wat ik verwacht van een tabel OpenTimes:
OpenTimes
-----------------
OpenTimesID
StoreID
Weekday
OpeningTime
ClosingTime

Op koopavond zal een winkel langer open zijn dan op een andere weekdag. Ook zijn veel winkels op maandag later open dan de rest van de week. Maar wat geeft Weekday=6 dan aan? Want ik maakte de aanname dat hiermee vrijdag werd aangegeven (zondag=1, maandag=2, dinsdag=3, etc).

De subquery (de eerst query uit je tweede reactie) geeft alle winkels terug welke een record met weekday=6 hebben. Dus ook de winkels buiten het zorggebied. Vervolgens draai je middels de 'NOT IN' het resultaat om.
De tabel ziet er exact zo uit als je zegt. Weekday geeft inderdaad de dag van de week aan.

Over de laatste alinea: dat is volgens mij ook precies de bedoeling maar het levert in ieder geval niet het resultaat op wat ik verwacht.

[ Voor 8% gewijzigd door Nutcaze op 09-07-2008 09:53 ]

Not all chemicals are bad. Without hydrogen or oxygen, for example, there would be no way to make water, a vital ingredient in beer.


  • pedorus
  • Registratie: Januari 2008
  • Niet online
Tsja, een vrij vreemd probleem lijkt me dit. Wellicht staat meenemen op false en zie je zo de rijen niet? Alternatief: kijk eens of het resultaat van de losse subquery wel klopt. Op welke records gaat het mis en waarom?

Nog een alternatief: Kijk eens wat een alternatieve query oplevert (oa NOT EXISTS (SELECT ...), LEFT JOIN ... WHERE ... IS NULL en ... EXCEPT SELECT ... zijn mogelijk).

Nog 2 losse opmerkingen:
  • waarom join je branches mee?
  • "if a then b=true else b=false" is hetzelfde als b=a

Vitamine D tekorten in Nederland | Dodelijk coronaforum gesloten


  • Niemand_Anders
  • Registratie: Juli 2006
  • Laatst online: 09-07-2024

Niemand_Anders

Dat was ik niet..

Vereenvoudig anders gewoon eerst je query en beperk je to DeliveryZips, Stores en OpenTimes. De rest (branches, addresses, etc) is totdat je 'basis' query correct is rommel. Ofwel haal eerst de winkels (StoreID's) op van alle winkels in postcode gebied X en welke open zijn op dag X.

Maar wat is eigenlijk het doel van de query? Volgens mij heb je de openingstijden nog helemaal niet nodig. Naar mijn mening kun je beter eerst een overzicht tonen van alle winkels (en misschien de afstand tot de ingevoerde postcode) in postcode gebied X. Pas als de winkel wordt geselecteerd lijkt mij dat de openingstijden interessant worden.

If it isn't broken, fix it until it is..


  • Nutcaze
  • Registratie: Oktober 1999
  • Laatst online: 06-11 19:57
pedorus schreef op woensdag 09 juli 2008 @ 10:08:
Tsja, een vrij vreemd probleem lijkt me dit. Wellicht staat meenemen op false en zie je zo de rijen niet? Alternatief: kijk eens of het resultaat van de losse subquery wel klopt. Op welke records gaat het mis en waarom?

Nog een alternatief: Kijk eens wat een alternatieve query oplevert (oa NOT EXISTS (SELECT ...), LEFT JOIN ... WHERE ... IS NULL en ... EXCEPT SELECT ... zijn mogelijk).

Nog 2 losse opmerkingen:
  • waarom join je branches mee?
  • "if a then b=true else b=false" is hetzelfde als b=a
De controle op meenemen zet ik onder commentaar als ik de bovenste query gebruik, maar ook als ik de query rechtsstreeks loslaat in sql server levert ie geen resultaten op dus...

Die alternatieven die je laat zien ben ik geen held in helaas.

Opmerkingen:
1: ik haal nog meer velden op dan in het voorbeeld zichtbaar (ook uit dat record dus :))
2: en dan doel je op
code:
1
If rsOpeningstijden.eof Then Meenemen = True Else Meenemen = False

zeker? Tjaa is een keuze, ik kan dan meteen de recordset weer sluiten.

Not all chemicals are bad. Without hydrogen or oxygen, for example, there would be no way to make water, a vital ingredient in beer.


  • pkuppens
  • Registratie: Juni 2007
  • Laatst online: 23:50
Wat gebeurt er als je de query opnieuw probeert op te bouwen?

Eerst maar eens de winkels vinden die weekday 6 open zijn.

Verder er rekening mee houden dat die set voor een bepaald postcode gebied leeg kan zijn?
Dan kun je toch ineens met NULL zitten?

Wat doet het volgende officieel?
SQL:
1
SELECT * WHERE id NOT IN ( 'lege set' )

  • Nutcaze
  • Registratie: Oktober 1999
  • Laatst online: 06-11 19:57
Niemand_Anders schreef op woensdag 09 juli 2008 @ 10:28:
Vereenvoudig anders gewoon eerst je query en beperk je to DeliveryZips, Stores en OpenTimes. De rest (branches, addresses, etc) is totdat je 'basis' query correct is rommel. Ofwel haal eerst de winkels (StoreID's) op van alle winkels in postcode gebied X en welke open zijn op dag X.

Maar wat is eigenlijk het doel van de query? Volgens mij heb je de openingstijden nog helemaal niet nodig. Naar mijn mening kun je beter eerst een overzicht tonen van alle winkels (en misschien de afstand tot de ingevoerde postcode) in postcode gebied X. Pas als de winkel wordt geselecteerd lijkt mij dat de openingstijden interessant worden.
De winkels die open zijn op die dag en binnen de geselecteerde tijd heb ik, de winkels die die dag wel open zijn maar NIET binnen de geselecteerde tijd heb ik ook. Alleen de winkels die die hele dag NIET open zijn heb ik niet. Voor die winkels zijn dan in de OpenTimes tabel wel records aanwezig maar niet met de geselecteerde weekday (bijv. 6). Tijden doen er dan ook niet toe want er is helemaal geen record aanwezig waar de tijden in staan.

Not all chemicals are bad. Without hydrogen or oxygen, for example, there would be no way to make water, a vital ingredient in beer.


  • Cousin Boneless
  • Registratie: Juni 2008
  • Laatst online: 28-02 12:55
Zou het misschien kunnen komen doordat weekday een reserved woord is in sqlserver?
Is er verschil tussen:

SQL:
1
2
3
SELECT *
FROM Stores ST
WHERE ST.storeID NOT IN (SELECT storeID FROM OpenTimes WHERE weekday = 6)

en:
SQL:
1
2
3
SELECT *
FROM Stores ST
WHERE ST.storeID NOT IN (SELECT storeID FROM OpenTimes WHERE [weekday] = 6)


Of leveren beide 0 records op?

[ Voor 14% gewijzigd door Cousin Boneless op 09-07-2008 12:53 ]


  • Nutcaze
  • Registratie: Oktober 1999
  • Laatst online: 06-11 19:57
Cousin Boneless schreef op woensdag 09 juli 2008 @ 12:12:
Zou het misschien kunnen komen doordat weekday een reserved woord is in sqlserver?
Is er verschil tussen:

SQL:
1
2
3
SELECT *
FROM Stores ST
WHERE ST.storeID NOT IN (SELECT storeID FROM OpenTimes WHERE weekday = 6)

en:
SQL:
1
2
3
SELECT *
FROM Stores ST
WHERE ST.storeID NOT IN (SELECT storeID FROM OpenTimes WHERE [weekday] = 6)


Of leveren beide 0 records op?
Helaas, had even hoop hoewel het in andere queries met weekday wel goed ging. Beide 0 resultaten. SQL server Enterprise Manager haalt zelfs de rechte haken er weer af.

Overigens leveren bovenstaande queries wel resultaten op, als je alleen op de OpenTimes tabel een query draait met weekday 6.

[ Voor 8% gewijzigd door Nutcaze op 09-07-2008 14:23 ]

Not all chemicals are bad. Without hydrogen or oxygen, for example, there would be no way to make water, a vital ingredient in beer.


  • Cousin Boneless
  • Registratie: Juni 2008
  • Laatst online: 28-02 12:55
Wat is het type van Stores.storeID en OpenTimes.storeID? Het lijkt erop dat het niet met elkaar matcht.

  • Nutcaze
  • Registratie: Oktober 1999
  • Laatst online: 06-11 19:57
Zijn beide GUID's helaas. Maar matchen absoluut wel.

Not all chemicals are bad. Without hydrogen or oxygen, for example, there would be no way to make water, a vital ingredient in beer.


  • Cousin Boneless
  • Registratie: Juni 2008
  • Laatst online: 28-02 12:55
Je kan het nog herschrijven naar..

SQL:
1
2
3
4
select st.* 
from Stores st
left join OpenTimes ot on ot.storeID = st.storeID and ot.weekday = 6
where ot.storeID is null


En als daar ook niets uitkomt, dan is het tijd om naar sqlserver te kijken.. misschien zijn de indexen currupt.

  • Nutcaze
  • Registratie: Oktober 1999
  • Laatst online: 06-11 19:57
Cousin Boneless schreef op woensdag 09 juli 2008 @ 18:15:
Je kan het nog herschrijven naar..

SQL:
1
2
3
4
select st.* 
from Stores st
left join OpenTimes ot on ot.storeID = st.storeID and ot.weekday = 6
where ot.storeID is null


En als daar ook niets uitkomt, dan is het tijd om naar sqlserver te kijken.. misschien zijn de indexen currupt.
Dit levert toch sowieso niets op? StoreID kan nooit Null zijn?!

Not all chemicals are bad. Without hydrogen or oxygen, for example, there would be no way to make water, a vital ingredient in beer.


  • Nutcaze
  • Registratie: Oktober 1999
  • Laatst online: 06-11 19:57
Cousin Boneless schreef op woensdag 09 juli 2008 @ 18:15:
Je kan het nog herschrijven naar..

SQL:
1
2
3
4
select st.* 
from Stores st
left join OpenTimes ot on ot.storeID = st.storeID and ot.weekday = 6
where ot.storeID is null


En als daar ook niets uitkomt, dan is het tijd om naar sqlserver te kijken.. misschien zijn de indexen currupt.
Inderdaad, dit is toch uiteindelijk de oplossing!

De query nu:
SQL:
1
2
3
4
5
6
7
8
9
10
11
SELECT ST.StoreID, ST.HtmlText1, DZ.DeliveryCost, DZ.MaximumOrderPrice, ST.StoreName, BR.Description
FROM DeliveryZips DZ INNER JOIN
Stores ST ON DZ.StoreID = ST.StoreID INNER JOIN
Addresses AD ON ST.StoreID = AD.OwnerID INNER JOIN
Branch2Stores BS ON ST.StoreID = BS.StoreID INNER JOIN
Branches BR ON BS.BranchID = BR.BranchID LEFT OUTER JOIN
OpenTimes ot ON ot.StoreID = ST.StoreID
AND ot.Weekday = 4
WHERE ('1000AA' BETWEEN DZ.ZipFrom AND DZ.ZipUntil)
AND (ot.StoreID IS NULL)
ORDER BY ST.StoreName


Allemaal onwijs bedankt voor het meedenken en de uiteindelijke oplossing!

[ Voor 3% gewijzigd door Nutcaze op 10-07-2008 10:34 ]

Not all chemicals are bad. Without hydrogen or oxygen, for example, there would be no way to make water, a vital ingredient in beer.


  • Cousin Boneless
  • Registratie: Juni 2008
  • Laatst online: 28-02 12:55
Of je verwijst even naar de pagina waar dit truukje beschreven staat:
http://dev.mysql.com/doc/...rewriting-subqueries.html

Maar jammer dat het zo moet. Dat is om een bug heenwerken..

[ Voor 17% gewijzigd door Cousin Boneless op 10-07-2008 10:23 ]

Pagina: 1