hej
om jag har en tabell som har 3 kolumner
namn
typ1
typ2
där typ är ett bit-värde som är 1 resp 0 beroende på om det är just den typen
jag vill köra en select på den och få ut alla rader + typ som ETT värde. Alltså jag behöver få ex raden som "namn | typ" för att kunna presentera i dem dropdownlist. Ngn vänlig själ som kan hjälpa mig med det?
LarsGMedlem sedan dec. 200012 464 inlägg Det kan du väl lösa i din applikation.
Möjligt men det är smidigare för mig att kunna binda sqlfrågan direkt till boxen i .net
man kan ju göra
select värde + " | " + värde
för att få en sådan formatering
GorekexMedlem sedan okt. 200179 inlägg Kör du SQL-server eller någon annan databas?
Det här funkar i alla fall i SQL-server:
SELECT STR(TYP1) + '|' + NAMN AS TEXTEN FROM TABELLEN
Tack för svaret gorekex
kör sql server, dock gör den frågan ej det jag behöver
var rad har båda typfälten och en flagga satt beroende på vilken typ det är.
För att förtydliga. nedan rad ett är av typen typ1
namn typ1 typ2
_____________________
fältnamn 1 0
GorekexMedlem sedan okt. 200179 inlägg Och vad är det du vill ha ut för resultat då?
Om du gör en select mot den raden du tog som exemel vill du då ha ut:
fältnamn | 1
eller
fältnamn | 0
eller
fältnamn | 1 | 0
Eller något helt annat?
jag vill göra en select på hela tabellen och få ut radvis fältnamn och typ
fältnamn | 1
fältnamn | 0
fältnamn | 0
fältnamn | 1
osv
LarsGMedlem sedan dec. 200012 464 inlägg select namn,typ1 from t
union all
select namn,typ2 from t
order by namn
GorekexMedlem sedan okt. 200179 inlägg Ja, det har jag förstått. Det jag inte förstått är vad du vill ha för värde i "typ" i resultatet från selecten, dvs hur innehållet i typ1 och typ2 ska tolkas. Vill du ha båda värdena som ett värde eller ska bara typ1 läsas?
Kan du ge exempel på innehåll i databasen och exempel på vilket resultat du förväntar dig?
(eller kanske någon annan som förstått bättre än jag kan hjälpa till?)
Exempel på exempel
namnet typ1 typ2 resultat
------ ----- ----- -----------------
olga 1 0 olga | 1
kalle 0 1 kalle | 0
maria 1 0 maria | 1
nisse 1 1 nisse | 1
torkel 0 0 torkel | 0
Eller?
haha ibland är det svårt att formulera en fråga. Tack larsg men det där är inte vad jag vill. Gorekex exempel beskriver just det jag försöker säga
någon som kan skapa en sådan sqlfråga som ger exemplet som Gorekex beskriver?
Peter SMedlem sedan dec. 20025 483 inlägg select namn + ' | ' + cast(typ1 as char(1))
?
LarsGMedlem sedan dec. 200012 464 inlägg Aha, det är bitvis eller du vill ha.
select namn, typ1 | typ2 2 from t
Peter SMedlem sedan dec. 20025 483 inlägg Men då får du ju inte det resultat Gorekex presenterar i inlägg #9, något neversleep säger sig vara ute efter.
namnet typ1 typ2 resultat
------ ----- ----- -----------------
olga 1 0 olga | 1
[b][i]kalle 0 1 kalle | 0[/i][/b]
maria 1 0 maria | 1
nisse 1 1 nisse | 1
torkel 0 0 torkel | 0
LarsGMedlem sedan dec. 200012 464 inlägg Jag tror nog att det är ett skrivfel, annars skulle det ju räcka med att göra select på typ1.
GorekexMedlem sedan okt. 200179 inlägg Ja, jag tror neversleep måste precisera mer vad han vill ha för resultat. Jag lade med flit in "felet" (om "bitvis eller" är det som eftersöks) i min resultatlista för att tvinga fram ett med detaljerat svar... :)
ok ett sista försök då... :)
Det här är vad jag vill ha ut.
Om typ1 är sann, vill jag ha ut raden + ' | jag är typ 1'
Om typ2 är sann, vill jag ha ut raden + ' | jag är typ 2'
namnet typ1 typ2 resultat
------ ----- ----- -----------------
olga 1 0 olga | jag är typ 1
kalle 0 1 kalle | jag är typ 2
maria 1 0 maria | jag är typ 1
nisse 1 1 nisse | jag är typ 1 och typ 2
torkel 0 0
Jag vill givetvis inte ha ut 1 eller 0. Jag vill beskriva radens typ med ett godtyckligt namn så att detta syns i interfacet.
LarsGMedlem sedan dec. 200012 464 inlägg select namn +
case when typ1 = 1 then '| Jag är typ1' else '' end +
case when typ2 = 1 then '| Jag är typ2' else '' end
from t