sql >> Database teknologi >  >> RDS >> PostgreSQL

Rails Postgres funktionelle indekser

Den indbyggede ActiveRecord-metode til oprettelse af indekser (add_index ) understøtter ikke funktioner eller andre mere avancerede funktioner. I stedet kan du bruge execute for at oprette indekset med SQL:

execute <<-SQL
  CREATE INDEX temporary_events_campaign_tinfoid_date_messagetype
  ON temporary_events(templateinfoid, campaign, date(gw_out_time), messagetype);
SQL

Bemærk, at brugen af ​​execute i migreringer kan være problematisk, hvis du ikke bruger SQL-skemaformatet (config.active_record.schema_format = :sql ). For mere information, søg efter schema_format .



  1. Inkluder nulresultater i group_concat

  2. Sådan fungerer LOCATE()-funktionen i MySQL

  3. Sådan bruges betinget til denne forespørgsel i Laravel 5.2

  4. MySql-forespørgsel:medtag dage, der har COUNT(id) ==0, men kun inden for de sidste 30 dage