abonnement Unibet Coolblue Bitvavo
  maandag 11 augustus 2008 @ 11:21:57 #276
63192 ursel
"Het Is Hier Fantastisch!
pi_60728008
SELECT * FROM product WHERE id NOT IN (SELECT PRODUCT_ID FROM product_download_link)
  FOK!-Schrikkelbaas maandag 11 augustus 2008 @ 11:28:50 #277
1972 Swetsenegger
Egocentrische Narcist
pi_60728149
Ik vergat te zeggen dat per product meerdere downloads voor kunnen komen. Dus bv de PD001 heeft WEL een download type 1 en type 2. Met bovenstaande queries krijg de PD001 dus wel terug.
  FOK!-Schrikkelbaas maandag 11 augustus 2008 @ 11:33:44 #278
1972 Swetsenegger
Egocentrische Narcist
pi_60728270
Hmz, nee dat lijkt aan mijn toegevoegde group by te liggen
-edit- nee toch niet
pi_60728781
1
2
3
4
5
6
7
8
9
10
11
12
SELECT
   * -- of wat je ook nodig denkt te hebben
FROM
   `product`
LEFT JOIN
   `product_download_link`
ON
   `product`.`id` = `product_download_link`.`product_id`
WHERE
   `product_download_link`.`download_id` != 4
AND
   `product`.`is_active` = 1


:?
  FOK!-Schrikkelbaas maandag 11 augustus 2008 @ 12:00:46 #280
1972 Swetsenegger
Egocentrische Narcist
pi_60728935
Nee, zelfde probleem als bovenstaande. Ik krijg dus nu elk product terug dat een download gekoppeld heeft, alleen niet de downloads type 4. Maar als een product geen type 4 download heeft (ongeacht de andere downloads) moet ik hem dus helemaal niet terug krijgen
  maandag 11 augustus 2008 @ 12:02:28 #281
187069 slacker_nl
Sicko pur sang
pi_60728978
swets, m'n edit gezien?
In theory there is no difference between theory and practice. In practice there is.
  FOK!-Schrikkelbaas maandag 11 augustus 2008 @ 12:30:55 #282
1972 Swetsenegger
Egocentrische Narcist
pi_60729743
Ik zie hem nu en dit lijkt inderdaad het juiste resultaat te geven

Even controleren -edit- klopt.
Bedankt

[ Bericht 24% gewijzigd door Swetsenegger op 11-08-2008 12:37:51 ]
pi_60731762
Oke, ik heb het volgende:
1
2
3
4
5
<select name=test[] multiple > 
          <option value=item1 >item1</option> 
          <option value=item2 >item2</option> 
          <option value=item3 >item3</option> 
</select>


Nu moet 'item1' in veld1 komen, 'item2' in veld2, en 'item3' in veld3. Als het niet is geselecteerd moet er een '0' in het juiste veld ge-insert worden, als een item wel is geselecteerd een '1'. Hoe wordt mijn MySQL query dan (en waarschijnlijk ook een stukje php)? Ik heb geen idee hoe ik dit moet aanpakken.
pi_60733712
ehm wat doet die test[] daar?

Leg eens uit wat je probeert te doen, 10 tegen 1 dat er een betere manier is.
pi_60735447
Ik denk dat hij met die [] meerdere resultaten verwacht uit de select (multiple)
The people who lost my respect will never get a capital letter for their name again.
Like trump...
pi_60735495
Als er nieuws wordt toegevoegd moeten er meerdere platformen geselecteerd worden, die aan het nieuwsbericht gekoppeld worden. Per platform moet het nieuwsbericht weer 'gelezen' kunnen worden. Als bijv. het platform: PS3 is geselecteerd en de Xbox niet, moet op de PS3-pagina het nieuwsbericht komen, maar op de Xbox pagina niet.
pi_60735666
quote:
Op maandag 11 augustus 2008 11:18 schreef slacker_nl het volgende:
[...]
-- in reactie op swets reactie hieronder --

select product.id
from product, product_download_link
where
/* Products die wel downloads hebben uit 4 skippen we*/
product.id not in (
select product.id
from product, product_download_link
where
product_download_link.product_id = product.id
and
product_download_link.download_id IN ( select id from product_download where DOWNLOAD_TYPE_ID = 4)
and product.is_active = 1
)
AND product.is_active = 1
AND product_download_link.product_id = product.id
Ziet er niet erg efficiënt en overzichtelijk uit. Volgens mij komt dit op hetzelfde neer:

1
2
3
4
5
6
7
8
9
10
11
SELECT p.code
FROM product p
WHERE
   p.active = 1
   AND p.id NOT IN 
   (
      SELECT l.product_id
      FROM product_download_link l
      INNER JOIN product_download d ON d.id = l.download_id
      WHERE d.DOWNLOAD_TYPE_ID = 4)
   )
Wil iedereen die in telekinese gelooft nu mijn hand op steken?
| Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
  maandag 11 augustus 2008 @ 16:38:40 #288
187069 slacker_nl
Sicko pur sang
pi_60736102
Behalve de join die je doet is ie precies hetzelfde. Impliciet doe ik een join, dus dat maakt verder weinig uit, en je moet weten of het product uberhaupt gedownload is.

Wat zijn de redenen dat het niet efficient zou zijn of overzichtelijk? Ik gebruik geen code tags, maar verder is het een redelijk straight forward approach.

Ahh, ik zie het al, je hebt een selectie ding eruit gehaald. Fair enough.
In theory there is no difference between theory and practice. In practice there is.
  FOK!-Schrikkelbaas maandag 11 augustus 2008 @ 16:51:51 #289
1972 Swetsenegger
Egocentrische Narcist
pi_60736419
Ik had 'm maar eenmalig nodig om een lijstje te generen van producten die een bepaalde download nog niet hebben zodat die toegevoegd kan worden

Dus in dit geval was performance van weinig belang, maar in het kader van dit topic is een verbeterde query als leerobject altijd meegenomen.
pi_60749138
Veel mensen zullen me een zeikerd vinden wat betreft structuur van een query, maar als je sql netjes opschrijft, dan wordt het geheel vaak veel beter leesbaar en beter te begrijpen. En dat leidt weer tot minder fouten en minder overbodige dingen, wat weer tot efficiëntere code kan leiden.
Wil iedereen die in telekinese gelooft nu mijn hand op steken?
| Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
pi_60749196
quote:
Op maandag 11 augustus 2008 23:46 schreef SuperRembo het volgende:
Veel mensen zullen me een zeikerd vinden wat betreft structuur van een query, maar als je sql netjes opschrijft, dan wordt het geheel vaak veel beter leesbaar en beter te begrijpen. En dat leidt weer tot minder fouten en minder overbodige dingen, wat weer tot efficiëntere code kan leiden.
Dat is met alles zo, als je het netjes programmeer/script dan is het teruglezen 10 makkelijk.

het is net het echte leven.
  FOK!-Schrikkelbaas dinsdag 12 augustus 2008 @ 08:27:10 #292
1972 Swetsenegger
Egocentrische Narcist
pi_60753411
quote:
Op maandag 11 augustus 2008 23:46 schreef SuperRembo het volgende:
Veel mensen zullen me een zeikerd vinden wat betreft structuur van een query, maar als je sql netjes opschrijft, dan wordt het geheel vaak veel beter leesbaar en beter te begrijpen. En dat leidt weer tot minder fouten en minder overbodige dingen, wat weer tot efficiëntere code kan leiden.
Nee hoor, ben het volkomen met je eens.
  dinsdag 12 augustus 2008 @ 14:45:03 #293
136730 PiRANiA
All thinking men are atheists.
pi_60763118
Wie heeft een tip voor me hoe ik het makkelijkst 38000 records weer kan importeren in een database? Het wil maar niet werken:
quote:
Fatal error: Allowed memory size of 16777216 bytes exhausted (tried to allocate 467248 bytes) in /var/www/PMA/libraries/sqlparser.
  dinsdag 12 augustus 2008 @ 15:20:31 #294
12221 Tijn
Powered by MS Paint
pi_60764142
quote:
Op dinsdag 12 augustus 2008 14:45 schreef PiRANiA het volgende:
Wie heeft een tip voor me hoe ik het makkelijkst 38000 records weer kan importeren in een database? Het wil maar niet werken:
[..]
Met PHPMyAdmin heb de optie om de query in stukjes te hakken om timeouts te voorkomen. Misschien dat dat helpt?
  dinsdag 12 augustus 2008 @ 15:41:19 #295
136730 PiRANiA
All thinking men are atheists.
pi_60764770
quote:
Op dinsdag 12 augustus 2008 15:20 schreef Tijn het volgende:

[..]

Met PHPMyAdmin heb de optie om de query in stukjes te hakken om timeouts te voorkomen. Misschien dat dat helpt?
Lijkt me wel! Waar vind ik dat?
  dinsdag 12 augustus 2008 @ 15:58:50 #296
12221 Tijn
Powered by MS Paint
pi_60765418
quote:
Op dinsdag 12 augustus 2008 15:41 schreef PiRANiA het volgende:

[..]

Lijkt me wel! Waar vind ik dat?
Onder "import" bij "partial import".

  dinsdag 12 augustus 2008 @ 16:10:23 #297
84926 WyriHaximus
Release the hounds smithers!
pi_60765751
Vergeet niet dat PMA sowieso de sql moet parsen voordat i het in stukken kan braken. Dus als die error op dat punt voorkomt dat zul je het met de hand moeten doen .
phluphy for president!
pi_60769130
LOAD DATA vanuit een .csv file?
Dan zit het in een fractie van een seconde in je database
pi_60770653
heeft mysql ook een sqlloader achtige constructie dan (de oracle variant)?

Jep, zie http://dev.mysql.com/doc/refman/5.0/en/mysqlimport.html

[ Bericht 52% gewijzigd door slakkie op 12-08-2008 19:30:46 ]
  woensdag 13 augustus 2008 @ 09:32:26 #300
152215 ManAtWork
Maar nu even niet,...
pi_60785723
In mijn SQL script heb ik de volgende voorwaarde staan.
quote:
WHERE (reknr LIKE ' 8%') AND (oms25_0 LIKE '% nieuwe auto's N%')
Maar dit gaat niet goed omdat er een ' staat in auto's. SQL gooit de ' eruit en geeft dan geen resultaat (logisch,...)
Ik heb al even zitten zoeken maar kan zo snel niet de oplossing vinden (blokhaken werken niet) om wel op auto's te laten selecteren.
Iemand een oplossing?
Als toeval niet bestaat, waarom hebben ze er dan een woord voor uitgevonden?
Niet storen, ik ben al gestoord genoeg,...
Vrouwen zijn om van te houden, niet om te begrijpen.
abonnement Unibet Coolblue Bitvavo
Forum Opties
Forumhop:
Hop naar:
(afkorting, bv 'KLB')