Verschil tussen cijfers en letters?

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Pagina: 1 2 volgende »

Koosje Derks

Koosje Derks

08/07/2012 16:37:45
Quote Anchor link
Hallo, In een database plaats ik een code(column1) en een categorie(column2). Als de query is
select * where column1 and column2 = 'white'
krijg ik als resultaat de records waar een code staat in column1 behorende tot
de categorie white.
Vreemd is echter dat ik de codes zie welke beginnen met 0-9 en niet die met A-Z ofschoon ook die behoren bij white.
Is daar wat aan te doen?

regards
 
PHP hulp

PHP hulp

20/04/2024 07:37:16
 
Obelix Idefix

Obelix Idefix

08/07/2012 16:51:06
Quote Anchor link
Ik ga er van uit dat je je kolommen niet echt column1 en column2 hebt genoemd.
Neem ook aan dat je query meer is dan alleen
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
select * where column1 and column2 = 'white'

Dat je query werkt had ik niet verwacht. Volgens mij moet je per 'column' aangeven waar je mee wilt vergelijken.
 
Wouter J

Wouter J

08/07/2012 17:06:01
Quote Anchor link
Tevens mis ik ook een FROM...
 
Obelix Idefix

Obelix Idefix

08/07/2012 17:14:44
Quote Anchor link
Ook daarom had ik niet verwacht dat de query zou werken ;-)
 
Koosje Derks

Koosje Derks

08/07/2012 23:32:23
Quote Anchor link
Ja, dat klopt. Ik ben vergeten FROM er bij te plaatsen. dan wordt het
SELECT * FROM table_name WHERE column1 AND column2 = 'white'
Het werkt wel, echter, in column1 staan getal/cijfer combinatie's, beginnen zij met een cijfer dan worden die getoond, echter niet die beginnen met een letter.
 
- SanThe -

- SanThe -

09/07/2012 01:46:08
Quote Anchor link
WHERE column1 is wat?

SELECT * FROM table_name WHERE column1 = 'white' AND column2 = 'white'
 
Wouter J

Wouter J

09/07/2012 09:05:36
Quote Anchor link
Lezen is ook moeilijk, Koosje:
Quote:
Dat je query werkt had ik niet verwacht. Volgens mij moet je per 'column' aangeven waar je mee wilt vergelijken.
 
Koosje Derks

Koosje Derks

09/07/2012 09:49:04
Quote Anchor link
SELECT * FROM table_name WHERE column1 AND column2 = 'white'
Dit werkt wel! hierbij een beter voorbeeld
De database heeft bijv. 5 records. vier hebben een inhoud (getal/cijfer combinatie's) bijv:
354YU8
90T3ER
AG685E

Bovenstaande query werkt wel maar het geeft drie records weer, diegene die met een cijfer beginnen en niet met een letter!
354YU8
90T3ER
23EWDT
 
Wouter J

Wouter J

09/07/2012 10:06:31
Quote Anchor link
Koosje, het werkt dus niet en het moet dus anders. Waarom niet gewoon onze verbeterpunten gebruiken i.p.v. eindeloos doorgaan met een verkeerde query?
 
Koosje Derks

Koosje Derks

09/07/2012 10:29:55
Quote Anchor link
OK, dan ziet ik nu even klem. In column1 heeft ieder record een ander inhoud. Zou het niet verder weten. Iets veranderen aan de structuur van de database veld,tupe, collatie, attributen?
 
Wouter J

Wouter J

09/07/2012 10:31:07
Quote Anchor link
Wouter J op 09/07/2012 09:05:36:
Lezen is ook moeilijk, Koosje:
Quote:
Dat je query werkt had ik niet verwacht. Volgens mij moet je per 'column' aangeven waar je mee wilt vergelijken.


- SanThe - op 09/07/2012 01:46:08:
WHERE column1 is wat?

SELECT * FROM table_name WHERE column1 = 'white' AND column2 = 'white'
Gewijzigd op 09/07/2012 10:31:17 door Wouter J
 
- SanThe -

- SanThe -

09/07/2012 10:34:03
Quote Anchor link
Koosje Derks op 09/07/2012 10:29:55:
OK, dan ziet ik nu even klem. In column1 heeft ieder record een ander inhoud. Zou het niet verder weten. Iets veranderen aan de structuur van de database veld,tupe, collatie, attributen?


Dan haal je column1 uit je WHERE.
 
Koosje Derks

Koosje Derks

09/07/2012 13:27:04
Quote Anchor link
- SanThe - op 09/07/2012 10:34:03:
Koosje Derks op 09/07/2012 10:29:55:
OK, dan ziet ik nu even klem. In column1 heeft ieder record een ander inhoud. Zou het niet verder weten. Iets veranderen aan de structuur van de database veld,tupe, collatie, attributen?


Dan haal je column1 uit je WHERE.


Geeft helaas hetzelfde resultaat
 
Ger van Steenderen
Tutorial mod

Ger van Steenderen

09/07/2012 15:57:00
Quote Anchor link
Dus jij hebt een tabel die er ongeveer zo uitziet:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
+-----------+-----------+
|  column1  |  column2  |
+-----------+-----------+
|  354YU8   |   white   |
|  90T3ER   |   white   |
|  AG685E   |   white   |
|  23EWDT   |   white   |
|  XXXXXX   |   black   |
+-----------+-----------+

En dan geeft volgens jou deze query:
SELECT * FROM sometable WHERE column2 = 'white'
niet die 4 eerste rijen terug?
Onmogelijk!
Gewijzigd op 09/07/2012 15:57:46 door Ger van Steenderen
 
Wouter J

Wouter J

09/07/2012 16:11:20
Quote Anchor link
En bewijs hiervoor kun je hier vinden: sqlfiddle
 
Ger van Steenderen
Tutorial mod

Ger van Steenderen

09/07/2012 16:26:06
Quote Anchor link
Lol Wouter, dat jij nog de moeite neemt dat te bewijzen :-)
 
Eddy E

Eddy E

09/07/2012 17:01:40
Quote Anchor link
Toch zijn die fiddle's wel een uitkomst hoor. Ipv databasedumpjes maken, zelf importeren etc.
 
Koosje Derks

Koosje Derks

09/07/2012 17:18:12
 
Wouter J

Wouter J

09/07/2012 17:19:49
Quote Anchor link
Jammer dat ik daar nog steeds foute queries tegenkom die hier al 5 keer zijn verbeterd...
 
Ger van Steenderen
Tutorial mod

Ger van Steenderen

09/07/2012 17:36:45
Quote Anchor link
Koosje,
Ik zie toch in je laatste querie een duidelijk verschil in de resultaten, of moet ik naar Hans Anders? ;-)
SQL basis principe, in de WHERE clause zet je de alleen de kolommen waarop je wilt filteren. Jou eerste 2 queries zullen in vele database systemen gewoon een foutmelding opleveren (zoals het hoort)
"Als jou schoenmaat dan leef je op grote voet"
Kan jij daar iets van maken? Ik niet iig, en een database ook niet
Gewijzigd op 09/07/2012 17:37:19 door Ger van Steenderen
 
Eddy E

Eddy E

09/07/2012 18:04:49
Quote Anchor link
is Mode_S een BOOL?
 

Pagina: 1 2 volgende »



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.