标签: associative-array

PL/SQL:从表中选择一个关联数组

我试图在一个查询中选择数据到pl/sql关联数组.我知道我可以使用硬编码密钥执行此操作,但我想看看是否有某种方法可以引用另一列(键列).


DECLARE
TYPE VarAssoc IS TABLE OF varchar2(2) INDEX BY varchar2(3);
vars VarAssoc;
BEGIN
SELECT foo, bar INTO vars(foo) FROM schema.table;
END;
Run Code Online (Sandbox Code Playgroud)

我得到一个错误,说当我这样做时必须声明foo.有没有办法在单个查询中创建我的关联数组,还是需要回退到FOR循环?

oracle plsql associative-array

13
推荐指数
2
解决办法
7万
查看次数

为什么PL/SQL中的空关联数组检查失败?

我有一个由表列的行类型创建的关联数组.

举个例子,它就是这样的(表名不同,但结构是一样的):

这是表的DDL

CREATE TABLE employees
  (
     id     NUMBER,
     name   VARCHAR2(240),
     salary NUMBER
  ); 
Run Code Online (Sandbox Code Playgroud)

这是我的程序正在做的事情:

DECLARE
    TYPE table_of_emp
      IS TABLE OF employees%ROWTYPE INDEX BY BINARY_INTEGER;
    emp TABLE_OF_EMP;
BEGIN
    IF emp IS NULL THEN
      dbms_output.Put_line('Null associative array');
    ELSE
      dbms_output.Put_line('Not null');
    END IF;
END; 
Run Code Online (Sandbox Code Playgroud)

我认为这应该导致打印"Null associative array".但是,if条件失败并且执行跳转到else部分.

现在,如果我放入一个for循环来打印集合值

DECLARE
    TYPE table_of_emp
      IS TABLE OF employees%ROWTYPE INDEX BY BINARY_INTEGER;
    emp TABLE_OF_EMP;
BEGIN
    IF emp IS NULL THEN
      dbms_output.Put_line('Null associative array');
    ELSE
      dbms_output.Put_line('Not null');

      FOR i IN emp.first..emp.last …
Run Code Online (Sandbox Code Playgroud)

oracle plsql associative-array oracle11g

13
推荐指数
2
解决办法
2万
查看次数

在jquery中创建一个关联数组

这是我迄今为止和鞋的类型boots, wellingtons, leather, trainers (in that order)

我想迭代并分配值,所以我有类似的东西

var shoeArray = { boots : '3', wellingtons: '0', leather : '1', trainers: '3'};
Run Code Online (Sandbox Code Playgroud)

目前我只是得到一个{3,0,1,3}我可以使用的数组,但它不是很有帮助.

function shoe_types() {
    var shoeArray = [];
    $('[type=number]').each(function(){
        $('span[data-field='+$(this).attr('id')+']').text($(this).val());      
        shoeArray.push ( parseInt($(this).val()) );      
    });             
    return shoeArray;        
}
Run Code Online (Sandbox Code Playgroud)

javascript arrays jquery associative-array

13
推荐指数
3
解决办法
8万
查看次数

将pop()与JavaScript关联数组一起使用

如何在JS中执行以下操作?我想模仿.pop()一个对象而不是一个数组.

var deck = { 
    'cardK' :'13',
    'cardQ' :'12',
    'cardAJ':'11'
};

var val = deck.pop();


console.log("Key" + val.key ); 
console.log("Value" + val.val ); 
Run Code Online (Sandbox Code Playgroud)

看来这是不可能的.

javascript arrays associative-array object

13
推荐指数
1
解决办法
2万
查看次数

通过字符串键/路径生成嵌套对象结构

我想创建一个函数createAssociativeArray,它将返回两个参数:stringobject,像这样:

function createAssociativeArray(string, object) {
  //...
}
Run Code Online (Sandbox Code Playgroud)

最后一项string应该获取object数据.查看使用/返回示例:

createAssociativeArray('key1.key2.key3', {
  data1: 1,
  data2: 2,
  data3: 3
});

// key1: {
//   key2: {
//     key3: {
//       data1: 1,
//       data2: 2,
//       data3: 3
//     }
//   }
// }
Run Code Online (Sandbox Code Playgroud)

什么是最简单,最健壮的方法?

使用eval不是可能的.


我尝试了什么:

function createAssociativeArray(string, object) {
  string = string.split('.');
  return string.reduce(function(_object, _target, i) {
    _object[_target] = (i + 1 === string.length ? object : {});
    return …
Run Code Online (Sandbox Code Playgroud)

javascript associative-array

13
推荐指数
1
解决办法
1640
查看次数

PHP Implode关联数组

所以我正在尝试创建一个基于多维数组生成SQL查询字符串的函数.

例:

function createQueryString($arrayToSelect, $table, $conditionalArray) {
$queryStr = "SELECT ".implode(", ", $arrayToSelect)." FROM ".$table." WHERE ";
$queryStr = $queryStr.implode(" AND ",$conditionalArray); /*NEED HELP HERE*/
return $queryStr;
}

$columnsToSelect = array('ID','username');
$table = 'table';
$conditions = array('lastname'=>'doe','zipcode'=>'12345');
echo createQueryString($columnsToSelect, $table, $conditions); /*will result in incorrect SQL syntax*/
Run Code Online (Sandbox Code Playgroud)

正如你所看到的,我需要第3行的帮助,因为它正在打印

SELECT ID,用户名FROM表WHERE姓氏和邮政编码

但它应该是打印

SELECT ID,用户名FROM表WHERE lastname ='doe'和zipcode ='12345'

php arrays associative-array implode

12
推荐指数
2
解决办法
3万
查看次数

为什么关联数组在localStorage [""]中不起作用?

例如,我有以下代码:

  localStorage["screenshots"] = new Array();
  localStorage["screenshots"]["a"] = 9;
  alert(localStorage["screenshots"]["a"]);

  Arr = new Array();
  Arr["screenshots"] = new Array();
  Arr["screenshots"]["a"] = 9;
  alert(Arr["screenshots"]["a"]);
Run Code Online (Sandbox Code Playgroud)

(我在Windows Vista 32位上使用谷歌浏览器v9.0.597.107)

但只有第二部分有效(alert()的输出是"a")!第一个警报输出对比"未定义"!

问题是什么?

谢谢.

javascript arrays html5 associative-array google-chrome

12
推荐指数
1
解决办法
4988
查看次数

将关联数组转换为数字数组

我在JavaScript中有以下关联数组结构

Array (
    [-1] => Array (
        catId : -1
        [subCatId] => Array (
             subCatId : -3
            [0] => Array (
                property : value
            )
            [1] => Array (
                property : value
            )
        )
    )
    [-4] => Array (
        catId : -4
        [subCatId] => Array (
             subCatId : -6
            [0] => Array (
                property : value
            )
            [1] => Array (
                property : value
            )
        )
    )
)
Run Code Online (Sandbox Code Playgroud)

我想将其转换为数字数组,就像这样

Array(
    [0] => Array(
        catID : -1
        [subCatId] => Array ( …
Run Code Online (Sandbox Code Playgroud)

javascript associative-array

12
推荐指数
1
解决办法
2万
查看次数

如何在javascript中循环JSON关联数组?

我从服务器获得JSON响应,我必须在javascript中循环遍历数组并获取值.但我似乎无法循环.

数组的JSON响应如下所示:

{
   "1": "Schools",
   "20": "Profiles",
   "31": "Statistics",
   "44": "Messages",
   "50": "Contacts"
}
Run Code Online (Sandbox Code Playgroud)

我只想循环遍历它以获取ID和Name并在页面上填充一些值.

我试过了:

$.each(response, function(key, value) {
    alert(key + ' ' + value);
});

// and 

for (var key in response) {
    alert(key + ' ' + response[key]);
}
Run Code Online (Sandbox Code Playgroud)

但是没有给出正确的价值观.

在此先感谢您的帮助.

回复:嗨,我在第二个循环中得到的响应是:

0 {
1 "
2 1
3 "
4 :
5 "
6 S
Run Code Online (Sandbox Code Playgroud)

等等

这意味着它将整个响应作为字符串进行处理,并将其作为键/值进行拆分.

谢谢

javascript jquery json loops associative-array

12
推荐指数
1
解决办法
4万
查看次数

php比较两个关联数组

我有这两个 associative arrays

//针阵列

$a = array(
"who" => "you", 
"what" => "thing", 
"where" => "place",
"when" => "hour"
);
Run Code Online (Sandbox Code Playgroud)

// haystack数组

$b = array(
"when" => "time", 
"where" => "place", 
"who" => "you",
"what" => "thing"
);
Run Code Online (Sandbox Code Playgroud)

我想,以检查是否$a有与之相匹配的b与它的准确keyvalue

并且如果每个键和值$a都具有精确匹配$b....我想将变量的值增加$c1,依此类推......

正如我们从上面看到的那样,有3种可能的匹配...并且据说可以将值增加$c3

$c = "3";

我希望有些天才可以帮助我......

php associative-array compare

12
推荐指数
1
解决办法
2万
查看次数