[Access] Query met LIKE werkt niet*

Pagina: 1
Acties:

  • DarkShadow
  • Registratie: Juli 2000
  • Laatst online: 27-05 00:03
We hebben een tabel met modelgegevens voor de Bilt (weergegevens), nu zijn er verschillende kollommen met verschillende gegevens (doh :) ), de eerste kolom geeft aan welke datum welke run het model heeft gedaan, en de andere kollommen geven parameters als temperatuur aan... Nu wil ik alleen de modelruns van +00 bekijken (dus nul uur vooruit voorspellen, je zal zien dat zelfs dat nog verschilt met de werkelijkheid :) ), dus dacht ik, ha simpel! Dat doe ik zo:
Een voorbeeld van de tabel is (wat kleiner en simpeler dan in werkelijkheid :P):

code:
1
2
3
4
5
6
7
8
9
10
11
run Station pmsl (hPa)  t2m ddd (*) ff (m/s)
2002112703 +00  De Bilt 1017,19 5,7 172 1,8
2002112703 +03  De Bilt 1017,29 5,2 130 3,0
2002112703 +06  De Bilt 1017,52 4,3 134 3,6
2002112703 +09  De Bilt 1016,27 7,2 146 4,2
2002112703 +12  De Bilt 1015,29 7,7 137 4,5
2002112703 +15  De Bilt 1014,05 6,2 133 4,7
2002112703 +18  De Bilt 1012,95 5,9 142 4,8
2002112703 +21  De Bilt 1011,72 5,5 152 4,1
2002112703 +24  De Bilt 1010,96 6,0 159 3,8
2002112706 +00  De Bilt 1016,89 5,2 134 2,9


code:
1
2
3
4
SELECT * FROM debilt
WHERE run LIKE '#+00' 

[i]//debilt is tabel naam, run is naam eerste kolom[/i]


De uitkomst moet dan dus dit zijn:
code:
1
2
3
run Station pmsl (hPa)  t2m ddd (*) ff (m/s)
2002112703 +00  De Bilt 1017,19            5,7  172 1,8
2002112706 +00  De Bilt 1016,89            5,2  134 2,9


Maar dit werkt dus niet :(, het rare is dat als ik uit de kolom 't2m' alle waardes met bv '*,2' eruit wil halen dit gewoon wel werkt:

code:
1
2
SELECT * FROM debilt
WHERE t2m LIKE '#,2'


Wat doe ik hier fout, ik kan er maar niet achter komen, alvast bedankt voor jullie hulp :)

edit: hmm de kolom namen zijn iets verschoven, en wil ff niet gefixt worden, maar jullie begrijpen het vast zo wel

[ Voor 20% gewijzigd door DarkShadow op 04-03-2004 15:25 ]


  • whoami
  • Registratie: December 2000
  • Laatst online: 00:40
Een LIKE werkt enkel op een alfanumerieke column.
Wat is het type van die run?

https://fgheysels.github.io/


Verwijderd

Je kunt gewoon = '+00' gebruiken, of LIKE '+00'

[edit]
/me zit verkeerd te kijken, het moet LIKE '%+00' zijn. Ik dacht dat run en Station twee aparte tabellen waren.

[ Voor 63% gewijzigd door Verwijderd op 04-03-2004 15:24 ]


  • DarkShadow
  • Registratie: Juli 2000
  • Laatst online: 27-05 00:03
type is tekst, dat was bij de kolom waarbij het werkte ook gewoon zo...

[ Voor 44% gewijzigd door DarkShadow op 04-03-2004 15:27 ]


  • TRON
  • Registratie: September 2001
  • Laatst online: 25-05 16:20
code:
1
...LIKE '%+00'

Leren door te strijden? Dat doe je op CTFSpel.nl. Vraag een gratis proefpakket aan t.w.v. EUR 50 (excl. BTW)


  • DarkShadow
  • Registratie: Juli 2000
  • Laatst online: 27-05 00:03
nee met het % teken lukt het ook niet, maakt niet uit of we # of % gebruiken, we probeerden het eigenlijk ook eerst met %

  • stfn345
  • Registratie: Januari 2000
  • Laatst online: 00:04
eerder info was onzin:

Ik heb het even nagebouwd, maar ondervind hier geen problemen:

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
mysql> select * from weer;
+----------------+---------+
| run            | station |
+----------------+---------+
| 2002112703 +00 | De Bilt |
| 2002112703 +03 | De Bilt |
| 2002112703 +24 | de Bilt |
| 2002112706 +00 | De Bilt |
+----------------+---------+
4 rows in set (0.00 sec)

mysql> select * from weer where run like '%+00';
+----------------+---------+
| run            | station |
+----------------+---------+
| 2002112703 +00 | De Bilt |
| 2002112706 +00 | De Bilt |
+----------------+---------+
2 rows in set (0.00 sec)

[ Voor 89% gewijzigd door stfn345 op 04-03-2004 15:32 ]


  • DarkShadow
  • Registratie: Juli 2000
  • Laatst online: 27-05 00:03
Verwijderd schreef op 04 maart 2004 @ 15:21:
Je kunt gewoon = '+00' gebruiken, of LIKE '+00'

[edit]
/me zit verkeerd te kijken, het moet LIKE '%+00' zijn. Ik dacht dat run en Station twee aparte tabellen waren.
='+00' kan niet want dan komt er niets uit, die lange waarde voor de +00 zit in dezelfde kolom

  • DarkShadow
  • Registratie: Juli 2000
  • Laatst online: 27-05 00:03
RaZoRhEaD schreef op 04 maart 2004 @ 15:28:
eerder info was onzin:

Ik heb het even nagebouwd, maar ondervind hier geen problemen:

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
mysql> select * from weer;
+----------------+---------+
| run            | station |
+----------------+---------+
| 2002112703 +00 | De Bilt |
| 2002112703 +03 | De Bilt |
| 2002112703 +24 | de Bilt |
| 2002112706 +00 | De Bilt |
+----------------+---------+
4 rows in set (0.00 sec)

mysql> select * from weer where run like '%+00';
+----------------+---------+
| run            | station |
+----------------+---------+
| 2002112703 +00 | De Bilt |
| 2002112706 +00 | De Bilt |
+----------------+---------+
2 rows in set (0.00 sec)
hmm vaag, hoe heb je die tabel opgeslagen dan? Ik werk trouwens in Access

  • TRON
  • Registratie: September 2001
  • Laatst online: 25-05 16:20
En dan gebruik je in de topictitel MySQL?

Acces gebruikt
code:
1
LIKE '*+00'
als het goed is.

Leren door te strijden? Dat doe je op CTFSpel.nl. Vraag een gratis proefpakket aan t.w.v. EUR 50 (excl. BTW)


  • stfn345
  • Registratie: Januari 2000
  • Laatst online: 00:04
DarkShadow schreef op 04 maart 2004 @ 15:35:
[...]


hmm vaag, hoe heb je die tabel opgeslagen dan? Ik werk trouwens in Access
Als je met Access werkt, waarom staat er dan MySQL in de topictitel?

  • DarkShadow
  • Registratie: Juli 2000
  • Laatst online: 27-05 00:03
RaZoRhEaD schreef op 04 maart 2004 @ 15:38:
[...]


Als je met Access werkt, waarom staat er dan MySQL in de topictitel?
sorry sorry :), wist niet dat er verschil zat tussen de query's van mysql en access :X

iig bedankt! Want zo werkt het gewoon normaal, wel vaag trouwens dat het bij een andere kolom gewoon wel werkte...

[ Voor 17% gewijzigd door DarkShadow op 04-03-2004 15:40 ]


  • whoami
  • Registratie: December 2000
  • Laatst online: 00:40
Tuurlijk zit er een verschil tussen..... Vrijwel iedere DB heeft z'n eigen dialect als het op SQL aankomt, en in het ene DBMS zijn dingen mogelijk die in het ander niet mgoelijk zijn.

Waarom zet je dan eigenlijk MySQL in de titel ipv Acces? :?

https://fgheysels.github.io/

Pagina: 1