I have this  JavaScript Stored Procedure in Snowflake that automates the process of calculating and storing correlation coefficients.

CREATE OR REPLACE PROCEDURE "DS_DEMO"."CALCULATE_CORRELATIONS"()
RETURNS STRING
LANGUAGE JAVASCRIPT
EXECUTE AS OWNER
AS
$$
    // Initialize an array to hold correlation results
    var correlationResults = [];

    // Step 1: Retrieve all numeric columns
    var getColumnsQuery = `
        SELECT 
            COLUMN_NAME
        FROM 
            INFORMATION_SCHEMA.COLUMNS
        WHERE 
            TABLE_SCHEMA = 'DS_DEMO' 
            AND TABLE_NAME = 'OPPORTUNITIES_DATASET_CLOSED'
            AND DATA_TYPE IN ('NUMBER', 'FLOAT', 'DECIMAL', 'INT', 'INTEGER', 'DOUBLE')
        ORDER BY 
            ORDINAL_POSITION;
    `;

    var getColumnsStmt = snowflake.createStatement({sqlText: getColumnsQuery});
    var columnsRes = getColumnsStmt.execute();

    var numericColumns = [];
    while (columnsRes.next()) {
        numericColumns.push(columnsRes.getColumnValue('COLUMN_NAME'));
    }

    // Step 2: Iterate over each numeric column and calculate correlation with MPG_WON
    for (var i = 0; i < numericColumns.length; i++) {
        var column = numericColumns[i];

        // Construct the correlation SQL
        var corrQuery = `
            SELECT 
                CORR(CAST("${column}" AS FLOAT), CASE WHEN "WON" THEN 1 ELSE 0 END) AS CORRELATION_COEF
            FROM 
                "DS_DEMO"."OPPORTUNITIES_DATASET_CLOSED"
            WHERE 
                "${column}" IS NOT NULL 
                AND "WON" IS NOT NULL;
        `;

        try {
            var corrStmt = snowflake.createStatement({sqlText: corrQuery});
            var corrRes = corrStmt.execute();

            if (corrRes.next()) {
                var corrValue = corrRes.getColumnValue('CORRELATION_COEF');
                correlationResults.push({ FEATURE_NAME: column, CORRELATION_COEF: corrValue });
            } else {
                // If correlation is not calculable (e.g., insufficient data)
                correlationResults.push({ FEATURE_NAME: column, CORRELATION_COEF: null });
            }
        } catch (err) {
            // Handle any errors gracefully
            correlationResults.push({ FEATURE_NAME: column, CORRELATION_COEF: 'ERROR' });
            snowflake.execute({
                sqlText: `INSERT INTO "DS_DEMO"."CORRELATION_RESULTS" (FEATURE_NAME, CORRELATION_COEF) VALUES (?, ?)`,
                binds: [column, 'ERROR']
            });
            continue; // Skip to the next column
        }
    }

    // Step 3: Insert the correlation results into the CORRELATION_RESULTS table
    for (var j = 0; j < correlationResults.length; j++) {
        var feature = correlationResults[j].FEATURE_NAME;
        var corr = correlationResults[j].CORRELATION_COEF;

        snowflake.execute({
            sqlText: `INSERT INTO "DS_DEMO"."CORRELATION_RESULTS" (FEATURE_NAME, CORRELATION_COEF) VALUES (?, ?)`,
            binds: [feature, corr]
        });
    }

    return 'Correlation calculation and storage completed successfully.';
$$;

Now my target column WON column is not boolean but a number with 0 or 1 value in it. I need to find the correlation coefficient with other numerical features and target variable WON so that I can select the suitable feature for my classification task. Please make relevant changes in the query if required.