MST

星途 面试题库

面试题:Cassandra中如何定义和使用用户自定义类型

请阐述在Cassandra中定义用户自定义类型(UDT)的语法步骤,并举例说明如何在表结构中使用这个自定义类型来存储相关数据。
35.3万 热度难度
数据库Cassandra

知识考点

AI 面试

面试题答案

一键面试
  1. 定义用户自定义类型(UDT)的语法步骤
    • 步骤一:使用CREATE TYPE语句 使用CREATE TYPE关键字,后跟自定义类型的名称,在括号内定义该类型的字段及其数据类型。语法如下:
CREATE TYPE <type_name> (
    <field1_name> <field1_data_type>,
    <field2_name> <field2_data_type>,
   ...
);
  • 示例:假设我们要定义一个表示地址的自定义类型。
CREATE TYPE address (
    street text,
    city text,
    state text,
    zip_code int
);
  1. 在表结构中使用自定义类型
    • 步骤一:创建表时指定自定义类型字段CREATE TABLE语句中,当定义字段时,指定之前创建的自定义类型。语法如下:
CREATE TABLE <table_name> (
    <primary_key_fields>,
    <udt_field_name> <type_name>,
    PRIMARY KEY (<primary_key_definition>)
);
  • 示例:假设我们要创建一个存储用户信息的表,用户信息中包含地址。
CREATE TABLE users (
    user_id uuid PRIMARY KEY,
    user_name text,
    user_address address
);
  • 插入数据示例
INSERT INTO users (user_id, user_name, user_address)
VALUES (uuid(), 'John Doe', {
    street: '123 Main St',
    city: 'Anytown',
    state: 'CA',
    zip_code: 12345
});