PostgreSQL
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> PostgreSQL

Tạo bí danh hàng loạt?

Bạn tìm kiếm * trên steroid. Rất tiếc, không có chức năng này trong SQL .

Giải pháp 1:

Sử dụng sức mạnh của lựa chọn khối trong trình soạn thảo văn bản yêu thích của bạn (vim, nguyên tử, ...). Đặt mỗi cột vào hàng mới. Chọn khối để ghi AS và tiền tố bảng. Sau đó chọn khối và sao chép tên cột.

Giải pháp 2:

Tạo danh sách đã chọn bằng INFORMATION_SCHEMA.COLUMNS :

SELECT 
 string_agg(FORMAT('%s.%s AS %s_%s', "table_name",
                   column_name,"table_name", column_name), ', ')
FROM information_schema.columns
WHERE "table_name" IN ('products', 'taxes', 'categories');

SqlFiddleDemo

Bạn có thể sử dụng E',\n' để đặt từng cột vào dòng mới.

Đầu ra:

╔════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════╗
║                                                                                   string_agg                                                                                   ║
╠════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════╣
║ products.id AS products_id, products.name AS products_name, taxes.id AS taxes_id, taxes.name AS taxes_name, categories.id AS categories_id, categories.name AS categories_name ║
╚════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════╝



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. EDB trở thành người dẫn đầu trong thị trường Postgres như thế nào

  2. Postgres:lệnh chân không không làm sạch các bộ giá trị đã chết

  3. Cách tạo Postgresql Dump từ vùng chứa Docker?

  4. Lỗi PostgreSQL:Chương trình không thể khởi động vì thiếu libpq.dll trên máy tính của bạn

  5. Khai báo một cột kiểu mảng 'not-null-string' trong PostgreSQL