Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


Konvertera sträng till int via IN()

Postades av 2001-10-08 18:28:00 - Pelle Johansson, i forum sql-server/msde, Tråden har 3 Kommentarer och lästs av 1073 personer

Jag har en sql-sats som returnerar en sträng,

select strFirstname, strLastname
from tbluser
where lnguserid in('38,39')

men skulle behöva omvandla detta så det inte är '' - vilket en annan sql-sats genererar - till:

select strFirstname, strLastname
from tbluser
where lnguserid in(38,39)

Felet jag får är:
Syntax error converting the varchar value '38,39' to a column of data type int.

Hela sql-satsen ser ut på följande sätt:

select strFirstName, strLastname
from tbluser
where lnguserid in(
select replace(replace(convert(varchar,allowuserlist),'0,',''),';',',')
from tbljobb
where allowuserlist like '%0,%'
and allowuserlist is not null
and allowuser=0
and userid = 38)

---

Fältets allowuserlist ursprunga värde ser ut som följer:
0,38;0,39;

Där 38 och 39 är lnguserid som skall plockas ut med in-satsen.

Hälsningar
/Pelle




Svara

Sv: Konvertera sträng till int via IN()

Postades av 2001-10-09 08:54:00 - Christoffer Hedgate

Om du kör SQL Server 2000 så kan du bygga dig en split-funktion vilken returnerar en table datatyp där du placerar dina int fält. En annan variant är, om du kör det i en procedur, att först plocka ut alla sökta userids till en temptabell, och sedan använda denna i IN() klusulen. För att göra själva split-funktionen eller dela upp och lägga in i temptabellen kolla på charindex samt substring, right och left funktionerna typ. Jag har byggt en splitfunktion fast jag har inte koden här, så om du vill kan du få den senare.


Svara

Sv: Konvertera sträng till int via IN()

Postades av 2001-10-09 17:33:00 - Tom Svensson

Hej Pelle!

Detta kanske hjälper dig lite

SELECT LEFT(REPLACE(REPLACE(CONVERT(varchar, allowuserlist),
'0,', ''), ';', ','), LEN(REPLACE(REPLACE(CONVERT(varchar,
allowuserlist), '0,', ''), ';', ',')) - 1) AS MittFält

returnerar
38,39

För att omvandla en datatyp så kan man skriva något i stil med
SELECT CAST('26' AS tinyint(1)) AS MittFält

... Kanske är till någon nytta.

Lev väl,
Tom S.


Svara

Sv: Konvertera sträng till int via IN()

Postades av 2001-10-09 21:12:00 - Pelle Johansson

Tack för det. Jag skall ta en titt på det och se om det kunde löst mitt dilemma.

Nu skrev jag om applikationen för att "tänket" inte helt solklart vilket resulterade i detta slarviga problem.

/Pelle


Svara

Nyligen

  • 14:24 CBD regelbundet?
  • 14:23 CBD regelbundet?
  • 14:22 Har du märkt några verkliga fördel
  • 09:09 Vill du köpa medicinska tester?
  • 12:47 Vem beviljar assistansen – kommune
  • 14:17 Någon med erfarenhet av hemstädnin
  • 14:14 Bör man använda sig av en båtförme
  • 14:12 Finns det någon intressant hundblo

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 569 619
27 953
271 709
5 800
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies