2013-10-07 48 views
3

我的SQL請求看起來像這樣獲取從與相同列的不同的表的值成一個數組

SELECT Objects.name, Elements.name, Labels.name.... 

我寫從該請求值到一個數組,像這樣:

while([results next]){ 

[arrayObjects addObject:[results stringForColumn:@"Objects.name"]]; 
    [arrayElements addObject:[results stringForColumn:@"Elements.name"]]; 
    [arrayLabels addObject:[results stringForColumn:@"Labels.name"]]; 
     ... 

} 

我看到此消息:「警告:我無法找到名爲'objects.name'的列」

但是如果我寫

while([results next]){ 

[arrayObjects addObject:[results stringForColumn:@"name"]]; 
    [arrayElements addObject:[results stringForColumn:@"name"]]; 
    [arrayLabels addObject:[results stringForColumn:@"name"]]; 
     ... 

} 

然後我只有所有數組的最後一個值。

有沒有辦法解決這個問題?

回答

1

這裏的東西去嘗試,我不知道如果這是你在找什麼:使用「同名」像這樣

而是每列: 「SELECT Objects.name,Elements.name ,Labels.name ......」

試試這個: 「選擇Objects.name爲O_name,Elements.name爲E_name,Labels.name爲L_Name ......」

然後,你可以使用獨特的欄目名稱:

[arrayObjects addObject:[results stringForColumn:@"O_name"]]; 
[arrayElements addObject:[results stringForColumn:@"E_name"]]; 
[arrayLabels addObject:[results stringForColumn:@"L_name"]]; 
    ... 
+0

哦!非常感謝你!它很棒! – rusBogun

+0

很高興幫助你! – BWS

相關問題