Функции SQL, обычно используемые на предприятиях, а также некоторые меры предосторожности при работе с SQL.

Примечание. Функции SQL в hive по сути такие же, как и функции в MySQL. Их синтаксис аналогичен, поэтому используйте его смело.

COALESCE: в Hive функция используется для возврата первого непустого (не NULL) значения из набора выражений. Если все выражения имеют значение NULL, функция COALESCE возвращает NULL. Это похоже на функцию COALESCE в SQL.
    ОБЪЕДИНИТЬ(выражение1, выражение2, ..., выражениеn)

Пример:

    ВЫБЕРИТЕ COALESCE(col1, col2) КАК результат
    ИЗ your_table;

NVL: в Hive функция NVL используется для определения того, имеет ли выражение значение NULL. Если выражение имеет значение NULL, возвращается указанное значение по умолчанию; если выражение не равно NULL, возвращается значение самого выражения.
    NVL(выражение, значение_по умолчанию)

Пример:

    ВЫБЕРИТЕ NVL(столбец1, 'значение_по умолчанию1') КАК обработанный_столбец1,
    NVL(столбец2, 'значение_по умолчанию2') КАК обработанный_стол2
    ИЗ вашей_таблицы;

substr: в Hive функция substr используется для извлечения подстроки из строки. Он позволяет указать начальную позицию строки (обратите внимание, что индекс начинается с 1) и длину извлекаемой подстроки.
    substr(str, начало [, длина])

Пример:
    SELECT substr('Hello, World!', 8, 5) AS Extracted_substring;
    SELECT substr('Привет, мир!', 8) AS Extracted_substring;

Подстановочные знаки: в Hive нечеткие запросы можно реализовать с помощью подстановочных знаков. Обычно используемые подстановочные знаки включают % и _.
    Подстановочный знак %: соответствует строке любой длины и может появляться в начале, середине или конце шаблона.
    _ подстановочный знак: соответствует одному символу.
    Найти записи, начинающиеся с определенной строки:

Пример:
        ВЫБЕРИТЕ столбец1, столбец2
        ИЗ вашей_таблицы
        ГДЕ столбец1 LIKE 'prefix%';

TRUNCATE: В Hive TRUNCATE — это операция, используемая для усечения (очистки) всех данных в таблице. После использования TRUNCATE структура (схема) таблицы останется неизменной, но все данные в таблице будут удалены.

       Обратите внимание, что операция TRUNCATE при выполнении не является транзакционной, что означает, что ее невозможно откатить. Поэтому перед выполнением операции TRUNCATE следует тщательно подумать и убедиться, что данные в таблице вам не нужны, поскольку после ее выполнения данные невозможно будет восстановить.

CAST: CAST — это функция SQL, которая используется для преобразования одного типа данных в другой тип данных. В SQL иногда может потребоваться преобразовать тип данных определенных столбцов или выражений для выполнения определенных вычислений, сравнений или других операций. Преобразование недопустимых строк в числа вернет NULL:

Например:
    SELECT name, CAST(age AS INT) AS age_int
    FROM your_table;

${}: в Hive SQL строки в формате ${} обычно используются в качестве переменных шаблона или заполнителей параметров. Эта форма строки называется ссылкой на переменную в Hive SQL
    . В запросе или скрипте Hive SQL форма ${имя_переменной} используется для представления переменной или параметра и может быть заменена определенным значением во время выполнения. Это позволяет вам писать запросы или сценарии без указания конкретных значений и динамически заменять эти переменные по мере необходимости во время выполнения.
    SELECT *
    FROM your_table
    WHERE columns1 > '${my_variable}'; (обратите внимание на кавычки '')

LEAD: В Hive SQL функция LEAD — это оконная функция, используемая для получения значения следующей строки после указанной строки. Он обеспечивает доступ к значениям из строки, следующей за текущей строкой в ​​наборе результатов, позволяя выполнять вычисления или анализ, связанные с последующими строками.
    LEAD(выражение, смещение, значение_по умолчанию) OVER (
    [PARTITION BY столбец_раздела1, столбец_раздела2, ...]
    ORDER BY столбец_заказа1 [ASC | DESC], order_col2 [ASC | DESC], ...)
    
    Описание параметра:

    выражение: выражение или столбец для получения последующих значений строки.
    смещение: указывает смещение следующей получаемой строки, то есть значение следующей получаемой строки. Смещение представляет собой целочисленное значение, которое может быть положительным, отрицательным или нулевым. Если смещение является положительным числом, оно указывает следующие строки; если это отрицательное число, оно указывает предыдущие строки; если оно равно нулю, оно указывает саму текущую строку.
    default_value: значение по умолчанию, возвращаемое, когда последующая строка не существует, то есть когда смещение превышает диапазон результирующего набора. Это необязательный параметр, который можно оставить неуказанным и по умолчанию имеет значение NULL.
    Функция LEAD вычисляет значение строки после текущей строки, поэтому функция LEAD вернет NULL или значение по умолчанию в последних нескольких строках набора результатов, поскольку последующие строки не существуют.

Меры предосторожности:

1. В SQL, если поле строкового типа хранит числа, размер можно напрямую сравнить в предложении WHERE. База данных SQL обычно автоматически преобразует поля строкового типа в числовые типы для сравнения при выполнении операций сравнения.Этот процесс называется неявным преобразованием.

2. Функцию sum() можно использовать только для числовых данных. Если вы попытаетесь применить функцию sum() к данным типа varchar, произойдет ошибка.

3. При использовании левого и правого соединений обязательно убедитесь, что условия включения основной таблицы и связанной таблицы находятся в соотношении 1:1, чтобы обеспечить нормальный запрос данных основной таблицы.

Классификация таблиц:

Таблица фактов
    Характеристика таблицы фактов заключается в том, что фактическое содержимое не хранится в таблице. Это набор первичных ключей. Эти идентификаторы могут соответственно соответствовать записи в таблице измерений. Таблица фактов содержит внешние ключи, связанные с каждым измерением
    . Меры таблицы фактов, связанные с таблицей измерений,
    обычно имеют числовой тип, и количество записей будет продолжать увеличиваться, а размер данных таблицы будет быстро расти. В данных подробной таблицы
(широкая таблица) )
    , некоторые атрибуты вместе образуют поле (перемешанное). Например, год, месяц, день, час, минута и секунда составляют время. Когда необходимо выполнить групповую статистику на основе определенного
    атрибута, такие операции, как перехват и сплайсинг, что крайне неэффективно.Для
    удобства анализа можно извлечь несколько атрибутов, вырезав поле в таблице фактов.Формируются новые поля.Поскольку полей больше, она называется широкой таблицей, и оригинальным становится узкий стол. Поскольку информация в широкой таблице более четкая и подробная, ее также называют подробной
таблицей. Таблица измерений
    . Таблица измерений — это величина, используемая при анализе данных. Каждая таблица измерений содержит один столбец первичного ключа. Первичный
    ключ таблицы измерений. таблицу измерений можно использовать, чтобы связать ее с ней.Для любого внешнего ключа в таблице фактов среда описания строк в таблице измерений должна точно соответствовать строкам в таблице фактов.Таблицы измерений обычно шире и плоские
    , нестандартные таблицы, содержащие большое количество текстовых атрибутов низкой детализации.

Наконец: я только что присоединился к компании в качестве стажера на полмесяца (говорили, что это должность разработчика, но в итоге я стал SQLboy).Есть еще много функций, с которыми я еще не сталкивался, и много знания, связанные с базами данных, которые мне еще нужно освоить. Я также сделаю это, когда у меня будет время. Я добавлю еще, надеюсь, это поможет всем

Guess you like

Origin blog.csdn.net/m0_71695472/article/details/132023727