- achievement_media_id: integer
- key: string
- value: string
- file_data_id: integer
- id: integer
- achievement_category_id: integer
- name: jsonb
- display_order: integer
- is_guild_category: boolean
- horde_quantity: integer
- horde_points: integer
- alliance_quantity: integer
- alliance_points: integer
- synchronization_status: integer
- synchronized_at: datetime
- id: integer
- id: integer
- achievement_category_id: integer
- name: jsonb
- description: jsonb
- points: integer
- is_account_wide: boolean
- faction_id: string
- prerequisite_achievement_id: integer
- next_achievement_id: integer
- display_order: integer
- reward_description: jsonb
- reward_item_id: integer
- synchronization_status: integer
- synchronized_at: datetime
- achievement_media_id: integer
- key: string
- value: string
- created_at: datetime
- updated_at: datetime
- azerite_essence_media_id: integer
- key: string
- value: string
- file_data_id: integer
- id: integer
- azerite_essence_id: integer
- playable_specialization_id: integer
- id: integer
- name: jsonb
- synchronization_status: integer
- synchronized_at: datetime
- azerite_essence_media_id: integer
- id: integer
- azerite_essence_id: integer
- main_power_spell_id: integer
- passive_power_spell_id: integer
- rank: integer
- pet_id: integer
- ability_id: integer
- slot: integer
- required_level: integer
- id: integer
- pet_type: string
- name: jsonb
- id: integer
- conduit_id: integer
- spell_id: integer
- tier: integer
- spell_description: jsonb
- spell_cast_time: jsonb
- spell_cooldown: jsonb
- spell_range: jsonb
- spell_power_cost: jsonb
- id: integer
- item_id: integer
- socket_type_id: string
- name: jsonb
- synchronization_status: integer
- synchronized_at: datetime
- id: integer
- covenant_id: integer
- playable_class_id: integer
- spell_tooltip_id: integer
- covenant_media_id: integer
- key: string
- value: string
- file_data_id: integer
- id: integer
- id: integer
- covenant_id: integer
- renown_reward_id: integer
- level: integer
- id: integer
- name: jsonb
- description: jsonb
- signature_ability_id: integer
- synchronization_status: integer
- synchronized_at: datetime
- covenant_media_id: integer
- creature_media_id: integer
- key: string
- value: string
- file_data_id: integer
- id: integer
- name: jsonb
- playable_specialization_id: integer
- synchronization_status: integer
- synchronized_at: datetime
- creature_family_media_id: integer
- creature_family_media_id: integer
- key: string
- value: string
- file_data_id: integer
- id: integer
- id: integer
- id: integer
- name: jsonb
- synchronization_status: integer
- synchronized_at: datetime
- id: integer
- creature_type_id: integer
- creature_family_id: integer
- name: jsonb
- is_tameable: boolean
- synchronization_status: integer
- synchronized_at: datetime
- creature_media_id: integer
- id: string
- name: jsonb
- id: integer
- name: jsonb
- id: string
- name: jsonb
- item_id: integer
- spell_id: integer
- display_string: jsonb
- item_media_id: integer
- key: string
- value: string
- file_data_id: integer
- id: string
- name: jsonb
- item_id: integer
- playable_class_id: integer
- display_string: jsonb
- id: integer
- name: jsonb
- synchronization_status: integer
- synchronized_at: datetime
- item_id: integer
- faction_id: string
- display_string: jsonb
- item_id: integer
- level: integer
- display_string: jsonb
- id: integer
- id: string
- name: jsonb
- item_id: integer
- playable_race_id: integer
- display_string: jsonb
- item_id: integer
- reputation_faction_id: integer
- min_reputation_level: integer
- display_string: jsonb
- item_id: integer
- profession_id: integer
- profession_tier_id: integer
- display_string: jsonb
- level: integer
- item_id: integer
- playable_specialization_id: integer
- display_string: jsonb
- item_id: integer
- stat_id: string
- value: integer
- display: jsonb
- is_negated: boolean
- is_equip_bonus: boolean
- id: integer
- item_class_id: integer
- display_name: jsonb
- verbose_name: jsonb
- hide_subclass_in_tooltips: boolean
- synchronization_status: integer
- synchronized_at: datetime
- id: integer
- item_class_id: integer
- item_subclass_id: integer
- item_quality_id: string
- item_binding_id: string
- inventory_type_id: string
- name: jsonb
- name_description: jsonb
- description: jsonb
- level: integer
- level_display_string: jsonb
- armor: integer
- armor_display_string: jsonb
- durability: integer
- durability_display_string: jsonb
- charges: integer
- charges_display_string: jsonb
- unique_equipped: jsonb
- context: integer
- required_level: integer
- purchase_price: integer
- sell_price: integer
- max_count: integer
- is_equippable: boolean
- is_stackable: boolean
- preview_item: jsonb
- synchronization_status: integer
- synchronized_at: datetime
- item_media_id: integer
- id: integer
- name: jsonb
- id: string
- id: integer
- journal_encounter_id: integer
- name: jsonb
- description: jsonb
- id: integer
- journal_encounter_id: integer
- item_id: integer
- journal_encounter_id: integer
- journal_mode_id: string
- id: integer
- parent_section_id: integer
- journal_encounter_id: integer
- title: jsonb
- body_text: jsonb
- id: integer
- journal_instance_id: integer
- journal_category_id: string
- name: jsonb
- description: jsonb
- synchronization_status: integer
- synchronized_at: datetime
- id: integer
- name: jsonb
- synchronization_status: integer
- synchronized_at: datetime
- journal_instance_media_id: integer
- key: string
- value: string
- file_data_id: integer
- id: integer
- id: integer
- journal_instance_id: integer
- journal_mode_id: string
- players: integer
- is_tracked: boolean
- id: integer
- journal_category_id: string
- journal_expansion_id: integer
- journal_map_id: integer
- journal_area_id: integer
- journal_location_id: integer
- name: jsonb
- description: jsonb
- minimum_level: integer
- synchronization_status: integer
- synchronized_at: datetime
- journal_instance_media_id: integer
- id: integer
- name: jsonb
- id: integer
- name: jsonb
- id: string
- name: jsonb
- id: integer
- source_id: string
- faction_id: string
- name: jsonb
- description: jsonb
- should_exclude_if_uncollected: boolean
- synchronization_status: integer
- synchronized_at: datetime
- id: integer
- battle_pet_type_id: integer
- name: jsonb
- rounds: integer
- synchronization_status: integer
- synchronized_at: datetime
- pet_ability_media_id: integer
- pet_ability_media_id: integer
- key: string
- value: string
- file_data_id: integer
- id: integer
- pet_media_id: integer
- key: string
- value: string
- file_data_id: integer
- id: integer
- id: integer
- battle_pet_type_id: integer
- source_id: string
- creature_id: integer
- name: jsonb
- description: jsonb
- is_capturable: boolean
- is_tradable: boolean
- is_battlepet: boolean
- is_alliance_only: boolean
- is_horde_only: boolean
- is_random_creature_display: boolean
- icon: text
- synchronization_status: integer
- synchronized_at: datetime
- pet_media_id: integer
- playable_class_media_id: integer
- key: string
- value: string
- file_data_id: integer
- id: integer
- id: integer
- power_type_id: integer
- name: jsonb
- gender_name: jsonb
- synchronization_status: integer
- synchronized_at: datetime
- playable_class_media_id: integer
- id: integer
- faction_id: string
- name: jsonb
- gender_name: jsonb
- is_selectable: boolean
- is_allied_race: boolean
- synchronization_status: integer
- synchronized_at: datetime
- playable_specialization_media_id: integer
- key: string
- value: string
- file_data_id: integer
- id: integer
- id: integer
- playable_class_id: integer
- role_id: string
- name: jsonb
- gender_description: jsonb
- synchronization_status: integer
- synchronized_at: datetime
- playable_specialization_media_id: integer
- id: integer
- name: jsonb
- synchronization_status: integer
- synchronized_at: datetime
- profession_media_id: integer
- key: string
- value: string
- file_data_id: integer
- id: string
- name: jsonb
- id: integer
- id: integer
- profession_id: integer
- name: jsonb
- minimum_skill_level: integer
- maximum_skill_level: integer
- synchronization_status: integer
- synchronized_at: datetime
- id: string
- name: jsonb
- id: integer
- name: jsonb
- description: jsonb
- profession_type_id: string
- synchronization_status: integer
- synchronized_at: datetime
- profession_media_id: integer
- id: integer
- playable_specialization_id: integer
- spell_id: integer
- overrides_spell_id: integer
- description: jsonb
- unlock_player_level: integer
- compatible_slots: jsonb
- synchronization_status: integer
- synchronized_at: datetime
- id: integer
- area: jsonb
- synchronization_status: integer
- synchronized_at: datetime
- id: integer
- category: jsonb
- synchronization_status: integer
- synchronized_at: datetime
- quest_id: integer
- playable_class_id: integer
- quest_id: integer
- item_id: integer
- quest_id: integer
- playable_race_id: integer
- quest_id: integer
- reputation_faction_id: integer
- value: integer
- quest_id: integer
- spell_id: integer
- trade_skill_spell_id: integer
- title_id: integer
- experience: integer
- honor: integer
- artifact_power: integer
- money: integer
- skill: jsonb
- id: integer
- quest_type: jsonb
- synchronization_status: integer
- synchronized_at: datetime
- id: integer
- quest_category_id: integer
- quest_area_id: integer
- quest_type_id: integer
- title: jsonb
- description: jsonb
- min_character_level: integer
- max_character_level: integer
- is_daily: boolean
- is_weekly: boolean
- is_repeatable: boolean
- spell_reward_id: integer
- trade_skill_spell_id: integer
- synchronization_status: integer
- synchronized_at: datetime
- recipe_media_id: integer
- key: string
- value: string
- file_data_id: integer
- id: integer
- recipe_id: integer
- reagent_id: integer
- quantity: integer
- id: integer
- crafted_item_id: integer
- profession_tier_id: integer
- profession_category_id: string
- name: jsonb
- description: jsonb
- rank: integer
- crafted_quantity: integer
- synchronization_status: integer
- synchronized_at: datetime
- recipe_media_id: integer
- id: integer
- name: jsonb
- id: integer
- parent_faction_id: integer
- reputation_tier_id: integer
- name: jsonb
- description: jsonb
- is_header: boolean
- synchronization_status: integer
- synchronized_at: datetime
- id: integer
- reputation_tier_id: integer
- name: jsonb
- min_value: integer
- max_value: integer
- id: integer
- name: jsonb
- synchronization_status: integer
- synchronized_at: datetime
- id: string
- name: jsonb
- version: string
- id: string
- name: jsonb
- id: integer
- covenant_id: integer
- creature_id: integer
- follower_id: integer
- tech_talent_tree_id: integer
- name: jsonb
- synchronization_status: integer
- synchronized_at: datetime
- id: string
- name: jsonb
- spell_media_id: integer
- key: string
- value: string
- file_data_id: integer
- id: integer
- spell_id: integer
- description: jsonb
- cast_time: jsonb
- cooldown: jsonb
- range: jsonb
- power_cost: jsonb
- id: integer
- name: jsonb
- description: jsonb
- synchronization_status: integer
- synchronized_at: datetime
- spell_media_id: integer
- id: string
- name: jsonb
- id: integer
- playable_class_id: integer
- playable_specialization_id: integer
- spell_id: integer
- tier_index: integer
- column_index: integer
- level: integer
- description: jsonb
- synchronization_status: integer
- synchronized_at: datetime
- tech_talent_media_id: integer
- key: string
- value: string
- file_data_id: integer
- id: integer
- id: integer
- name: jsonb
- max_tiers: integer
- synchronization_status: integer
- synchronized_at: datetime
- id: integer
- tech_talent_tree_id: integer
- prerequesite_talent_id: integer
- spell_tooltip_id: integer
- socket_type_id: string
- name: jsonb
- description: jsonb
- tier: integer
- display_order: integer
- synchronization_status: integer
- synchronized_at: datetime
- tech_talent_media_id: integer
- id: integer
- name: jsonb
- gender_name: jsonb
- synchronization_status: integer
- synchronized_at: datetime
SELECT i.id,
i.name->>'en_US' as name,
i.purchase_price,
i.sell_price,
i.is_equippable,
i.is_stackable,
i.level,
i.required_level,
i.max_count,
ic.name->>'en_US' as item_class,
sub.display_name->>'en_US' as item_subclass
FROM public.items i
JOIN public.item_classes ic
ON ic.id = i.item_class_id
JOIN public.item_subclasses sub
ON sub.id = i.item_subclass_id
AND sub.item_class_id = i.item_class_id
LIMIT 100