Teradata Package for Python Function Reference - 17.00 - bitor - Teradata Package for Python

Teradata® Package for Python Function Reference

Product
Teradata Package for Python
Release Number
17.00
Release Date
April 2021
Content Type
Programming Reference
Publication ID
B700-4008-070K
Language
English (United States)
 
 
bitor

 
Functions
       
bitor(target_arg, bit_mask_arg)
DESCRIPTION:
    Function performs the logical OR operation on the corresponding bits from the
    two input arguments.
 
    Function takes two bit patterns of equal length and performs the logical OR
    operation on each pair of corresponding bits as follows:
        * If either of the bits from the input arguments is 1 then result is 1.
        * If both of the bits from the input arguments are 0 then result is 0.
 
    If the target_arg and bit_mask_arg arguments differ in length, the arguments are
    processed as follows:
        * The target_arg and bit_mask_arg arguments are aligned on their least
          significant byte/bit.
        * The smaller argument is padded with zeros to the left until it becomes the
          same size as the larger argument.
 
PARAMETERS:
    target_arg:
        Required Argument.
        Specifies a ColumnExpression of an integer or byte column or a numeric or byte
        literal value.
        If the argument is NULL, the function returns NULL.
        Format of a ColumnExpression of a column: '<dataframe>.<dataframe_column>.expression'.
        Supported SQL column types: BYTEINT, SMALLINT, INTEGER, BIGINT, and VARBYTE(n)
 
    bit_mask_arg:
        Required Argument.
        Specifies a ColumnExpression of an integer or byte column or a numeric or byte
        literal value.
        If the argument is NULL, the function returns NULL.
        Format of a ColumnExpression of a column: '<dataframe>.<dataframe_column>.expression'.
 
        Argument Type Rules and Support:
            The data type of the bit_mask_arg parameter varies depending upon the data type
            of the target_arg parameter. The following table shows the supported column/literal
            value types for target_arg and bit_mask_arg parameters and their permitted
            combinations:
             ===============================================
            | target_arg type | bit_mask_arg type           |
             ===============================================
            | BYTEINT         | BYTE(1) or BYTEINT          |
            | SMALLINT        | BYTE(2) or SMALLINT         |
            | INTEGER         | BYTE(4) or INTEGER          |
            | BIGINT          | BYTE(8) or BIGINT           |
            | VARBYTE(n)      | VARBYTE(n)                  |
             ===============================================
 
NOTE:
    Function accepts positional arguments only.
 
EXAMPLES:
    # Load the data to run the example.
    >>> load_example_data("dataframe", "bytes_table")
    >>>
 
    # Create a DataFrame on 'bytes_table' table.
    >>> bytes_table = DataFrame("bytes_table")
    >>> bytes_table
           byte_col      varbyte_col             blob_col
    id_col
    2         b'61'  b'616263643132'  b'6162636431323233'
    1         b'62'      b'62717765'  b'3331363136323633'
    0         b'63'      b'627A7863'  b'3330363136323633'
    >>>
 
    # Example performs bitor operation on "id" and "byte_col" columns.
    # Import func from sqlalchemy to execute bitor function.
    >>> from sqlalchemy import func
 
    # Create a sqlalchemy Function object.
    # Note: Function name case does not matter. We can use the function name in
    #       lower case, upper case or mixed case.
    >>> bit_byte_func_ = func.Bitor(bytes_table.id_col.expression, bytes_table.byte_col.expression)
    >>>
 
    # Pass the Function object as input to DataFrame.assign().
    >>> df = bytes_table.assign(bitor_byte_=bit_byte_func_)
    >>> print(df)
           byte_col      varbyte_col             blob_col  bitor_byte_
    id_col
    2         b'61'  b'616263643132'  b'6162636431323233'   1627389954
    1         b'62'      b'62717765'  b'3331363136323633'   1644167169
    0         b'63'      b'627A7863'  b'3330363136323633'   1660944384
    >>>