循环记录时访问同名列

时间:2017-02-22 11:16:53

标签: postgresql

我有一个代码块,我在其中循环包含两个具有一些同名列的表的连接的记录。

现在我需要其中两个同名列的值,但是我无法通过“缺少FROM-clause条目表”t1“:

var send_message = $('#send_message');
send_message.on('click', function(e){
    e.preventDefault();
    var error = false;
    var name = $('#name').val();
    var email = $('#email').val();
    var message = $('#message').val();

    if(name.length === 0){
        var error = true;
    }
    if(email.length === 0 || email.indexOf('@') === -1){
        var error = true;

    }
    if(message.length === 0){
        var error = true;
    }

    if(error == false){

        var formData = {
            'name'              : name,
            'email'             : email,
            'message'           : message
        };

        $.ajax({
            type        : 'POST',
            url         : 'email.php',
            data        :  formData,
            success: function(){
                $('#send_message').remove();
                $('#mail_success').fadeIn(500);             }
        })

    }
});

1 个答案:

答案 0 :(得分:2)

使用(record).column语法来引用记录中的每个复合类型。

do $$
declare r record;
begin
    for r in
        select t1, t2
        from
            table1 t1
            join
            table2 t2 on t1.somecolumn = t2.somecolumn
    loop
        insert into table3 (column1, column2)
        values (((r.t1).someothercolumn), ((r.t2).someothercolumn));
    end loop;
end; $$;