2016-07-01 5 views
0

私は友達リストを取得するためのいくつかのコードを実装しようとしています。 まず:どのように友人を実装する関係とアンドロイド

- I have my String id. E.G: 784717 
    - I have an string with 100 numbers. E.G: 7781,5913,551949194,4919491,...,444131 (One string separated by ,) 
    - I have 3000 records in my Database with different numbers. (With numbers I mean some kind of ID) 
    - Of my 100 numbers only 8 are registered in my database. 

質問:

  • どのように番号がデータベースに登録し、関係他のテーブルに挿入されているかを知ることができますか? 私のテーブルの関係は、この列があります。

    *数値1 - (ここでは私のIDでなければなりません)
    * number2の - (存在する100個の数字の1)

  • だから私のテーブルに関係が8新しいあるべき行。

    は、私が試した:

    EXEC('SELECT * FROM Accounts WHERE ID IN(' [email protected]_mystring+')') 
    

が、効率的に

+0

どのデータベース... SQL Server? –

答えて

0

ある場合、私は、他のテーブルに挿入する方法を知っているかしていないと仮定すると、これは、SQL Server、およびの助けを借りています例えば、パーサ機能

Select * from [dbo].[udf-Str-Parse]('7781,5913,551949194,4919491,...,444131',',') 
場合は、あります - このサブクエリから

戻り

Key_PS Key_Value 
1  7781 
2  5913 
3  551949194 
4  4919491 
5  ... 
6  444131 

は、あなたがこの

Select A.* 
    From Accounts A 
    Join (Select * from [dbo].[udf-Str-Parse]('7781,5913,551949194,4919491,...,444131',',')) B 
    on A.Key_Value =A.ID 

のようなものUDFおそらく、あなたのアカウントの表

に結果を参加することができますネイティブパーサー。

CREATE FUNCTION [dbo].[udf-Str-Parse] (@String varchar(max),@delimeter varchar(10)) 
--Usage: Select * from [dbo].[udf-Str-Parse]('Dog,Cat,House,Car',',') 
--  Select * from [dbo].[udf-Str-Parse]('John Cappelletti was here',' ') 
--  Select * from [dbo].[udf-Str-Parse]('id26,id46|id658,id967','|') 

Returns @ReturnTable Table (Key_PS int IDENTITY(1,1) NOT NULL , Key_Value varchar(max)) 

As 

Begin 
    Declare @intPos int,@SubStr varchar(max) 
    Set @IntPos = CharIndex(@delimeter, @String) 
    Set @String = Replace(@String,@[email protected],@delimeter) 
    While @IntPos > 0 
     Begin 
     Set @SubStr = Substring(@String, 0, @IntPos) 
     Insert into @ReturnTable (Key_Value) values (@SubStr) 
     Set @String = Replace(@String, @SubStr + @delimeter, '') 
     Set @IntPos = CharIndex(@delimeter, @String) 
     End 
    Insert into @ReturnTable (Key_Value) values (@String) 
    Return 
End 
+0

[SQL Server]オブジェクト名 'dbo.udf-Str-Parse'が無効です。 私はそのエラーを受け取りました。私はMSSQLを使用しています2014 – Jorge

+0

あなたのサーバー上で作成する必要があるUDFです。私はコードを提供しました –

+0

あなたは2016年に偶然ですか? –

関連する問題