Avatar billede supermand69 Nybegynder
25. april 2002 - 22:10 Der er 31 kommentarer og
1 løsning

WHERE noget='*'

Er der ikke et eller andet tegn eller en string man kan skrive i en WHERE-clause så den finder alt??

- og lad nu være med at skrive at jeg skal bare lade være med at skrive WHERE.... :)
Avatar billede the_collector Novice
25. april 2002 - 22:13 #1
Mener du inklusive missing værdier. Må godt nok indrømme at min SQL er begyndt at blive noget rustent.
Avatar billede supermand69 Nybegynder
25. april 2002 - 22:14 #2
Hvad er det??
Avatar billede -mundi- Nybegynder
25. april 2002 - 22:17 #3
lad være med at have en where clause :-)

select * from tabel

det virker
Avatar billede supermand69 Nybegynder
25. april 2002 - 22:18 #4
-mundi- -->

ehm... Det er det jeg lige har sagt jeg ikke tager som et svar :)
Avatar billede -mundi- Nybegynder
25. april 2002 - 22:18 #5
hvis du vil skrive where kan du gøre sådan her:

select * from tabel where 1=1

eller hvis du har et id autonumereringsfdelt skrive

select * from tabel where id>1
Avatar billede -mundi- Nybegynder
25. april 2002 - 22:19 #6
hvorfor vil du skrive where ?
Avatar billede supermand69 Nybegynder
25. april 2002 - 22:20 #7
Jeg er ved at lave en søgefunktion hvor der er over 20 forskellige værdier man enten kan vælge eller lade være...

gider ikke til at lave 999 forskellige mysql_query's
Avatar billede -mundi- Nybegynder
25. april 2002 - 22:25 #8
hvad var der galt med 1=1 ?
Avatar billede supermand69 Nybegynder
25. april 2002 - 22:30 #9
Hvorfor vil du have mig til at søge efter en værdi i 1 hvis man ikke vil søge efter en værdi i 1....

Du kan også skrive:
WHERE 1<=1
WHERE 1>=1
WHERE 1!=1

- men jeg har ikke noget at bruge det til.... Jeg skal bare have fundet ud af om der er en måde man kan lave en WHERE-clause så den nærmest springer over den

ligesom med SELECT * FROM table... Her tager den alle cols i modsætning til her: SELECT id, nanv FROM table

Er du med???
Avatar billede -mundi- Nybegynder
25. april 2002 - 22:34 #10
select * from table where 1=1 springer i princippet where clausen over, fordi 1 altid er lig med 1 ... Du kan så tilføje lige så mange andre kriterier bagefter men 1=1 er altid sand oig vil derfor vælge alt
Avatar billede supermand69 Nybegynder
25. april 2002 - 22:37 #11
ok

du er ikke med
Avatar billede -mundi- Nybegynder
25. april 2002 - 22:38 #12
enten er jeg ikke med på hvad du mener eller også forstår du ike hvad jeg skriver ?
Avatar billede -mundi- Nybegynder
25. april 2002 - 22:38 #13
du vil have en where clause der i princippet ikke skal gøre noget, det har jeg svaret på 3 gange nu
Avatar billede supermand69 Nybegynder
25. april 2002 - 22:39 #14
the colector -->
Hvad var det at du mente??
Avatar billede the_collector Novice
25. april 2002 - 22:43 #15
Jeg har forstået hvad du mener, men jeg prøver at tænke, så jeg kan svare på dit spørgsmål. Mit SQL er desværre blevet noget rustent, så der er ingen garantier. Nu jeg har forstået dit spørgsmål, er mit også blevet besvaret og det er ja.
Avatar billede the_collector Novice
25. april 2002 - 23:54 #16
Jeg kan desværre ikke huske, hvad det er man skal skrive, for at den spørger om det ønskede. Det SQL materiale jeg havde, befinder sig på en tidligere arbejdsplads.
Avatar billede -mundi- Nybegynder
26. april 2002 - 07:14 #17
hmmm kom lige i tanke om her til morgen at du pan prøve med

.... where textFelt like '%%'
Avatar billede fri-hash Nybegynder
26. april 2002 - 09:15 #18
jeg vil da mene at hvis man skriver where 1=1, så vil den lede efter en kolonne der hedder 1 og hvor værdien er 1 - der skal jo ikke søges i nogen kolonne. til gengæld kan du skrive

select * from tabelnavn where 1

den skulle virke uanset om det er numeriske eller alfanumeriske kolonner
Avatar billede terry Ekspert
26. april 2002 - 11:44 #19
superman69>what is wrong with -mundi-'s answer? You do NOT need to use WHERE if you want to see "ALT"
There is NO LOGIC in using WHERE if you want to see everything but if you MUST
then

select * from tabel WHERE 1
Avatar billede fri-hash Nybegynder
26. april 2002 - 11:58 #20
ok, terri, since we are commenting others answers, then what's the point in repeating an allready given answer and posting it as a new answer?
Avatar billede terry Ekspert
26. april 2002 - 14:09 #21
hi fri-hash>Sorry! I hadn't even seen you answer as I could see that superman69 didnt seem happy with any of those already give, and I wanted to know WHY WHERE couldnt be used and just added select * from tabel WHERE 1 as I know it works. Once again sorry, not trying to take points from you :o)
Avatar billede -mundi- Nybegynder
26. april 2002 - 14:21 #22
Yeah you were :-) Burn him at the stake
Avatar billede terry Ekspert
26. april 2002 - 14:29 #23
:o) Well how else am I to stay in first position? (databases)
Avatar billede -mundi- Nybegynder
26. april 2002 - 14:30 #24
:-)
Avatar billede supermand69 Nybegynder
26. april 2002 - 15:43 #25
UDBEDRING AF SPØRGSMÅL:
Jeg har en form hvor jeg sender nogle <input type="checkbox">... Brugeren kan altså vælge variablen eller lade være

eks.
$var = 'noget' || $var = ''

Jeg vil så hente det fra min db...

eks.
SELECT id, navn FROM table WHERE var='noget' && var1='noget' && var2='noget'

- men hvis $var ikke er valgt kommer min query til at se sådan ud

eks.
SELECT id, navn FROM table WHERE var='' && var1='noget' && var2='noget'

- så er problemet at den kun finder de rækker hvor $var = '', og det er jo ikke meningen... Jeg vil gerne have sådan at den så i stedet finder ALT. Altså den skal springe over den WHERE-clause hvor variablen er = ''

Er I med?? =)
Avatar billede terry Ekspert
26. april 2002 - 15:52 #26
superman69> You have to build your SQL dynamically. This means that IF for example the field var contains something then you use this in the select.

THIS IS ONLY AN EXAMPLE:

Dim sSQL
sSQL = "SELECT id, navn FROM table WHERE 1"
If not Isnull(var) then
  sSQL = sSQL & " AND var = 'noget' "
end if
If not Isnull(var1) then
  sSQL = sSQL & " AND var1 = 'noget' "
end if

and so on ....

NOTICE: "SELECT id, navn FROM table WHERE 1" !!!!!!!

If NO fields contain data then all records are selected.

and superman69, if you cant accept this answer then SORRY YOU HAVE RUN OUT OF TIME :o)
Avatar billede supermand69 Nybegynder
26. april 2002 - 15:58 #27
terry -->
Er det MySQL?
Avatar billede terry Ekspert
26. april 2002 - 16:06 #28
NO it is an EXAMPLE as to how to dynamically build an SQL statement in code.

You have gone WAY OFF track from your original question, you are ALSO wanting an answer concerning WEB (ASP or PHP) programming which has very liitle to do with SQL either.
Avatar billede supermand69 Nybegynder
26. april 2002 - 16:15 #29
terry -->
Hvorfor er det lige at du ikke skriver dansk?? Det ser jo nok ud til at du kan sproget...

Nu er vi jo også ligesom i forumet "MySQL"
Avatar billede terry Ekspert
26. april 2002 - 16:22 #30
I am English, but it takes far too long to write Danish, and danes are good at English :o)

MySQL is a database NOT a programming langauge, and making a WEB page doesnt necessarily have anything at all to do with MySQL. Just to make a poínt what langauge are you using to make you web page?

I cant give you an answer to HOW to solve this in the language which you are using, but I can give you an example as to HOW to get around the problem you are having, and this is the CORRECT way!
Avatar billede supermand69 Nybegynder
26. april 2002 - 16:29 #31
tak..

Nu har jeg fundet ideen i hvordan du mener.... Jeg forstod bare ikke lige dine IF-statements... Bruger nemlig PHP

:)
Avatar billede terry Ekspert
26. april 2002 - 16:33 #32
PHP is that part of MySQL? (just joking!) :o)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester