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

Bảng MySql ở định dạng JSON

Hãy thử điều này:

SET @schema = 'test_db';
SET @table = 'test';

SELECT CONCAT(
  'SELECT CONCAT(TRIM(TRAILING ', QUOTE(','), ' FROM CONCAT(', QUOTE('{'), ',', 
  GROUP_CONCAT(QUOTE('"'), ',', QUOTE(COLUMN_NAME), ',', 
  QUOTE('"'), ',', QUOTE(':'), ',', QUOTE('"'), ',', COLUMN_NAME, ',', 
  QUOTE('"'),',', QUOTE(',')),
  ')), ''}'') FROM ', @table
)
INTO @qry FROM 
  (SELECT COLUMN_NAME FROM INFORMATION_SCHEMA.COLUMNS c
  WHERE TABLE_SCHEMA = @schema AND TABLE_NAME = @table) t;

SELECT @qry;
PREPARE stmt FROM @qry;
EXECUTE stmt;

Truy vấn trên tạo dữ liệu bảng ở định dạng JSON. Sử dụng truy vấn, bạn có thể chuẩn bị một thủ tục được lưu trữ lấy cơ sở dữ liệu và tên bảng làm tham số đầu vào và điền dữ liệu của bạn. Nếu bạn muốn loại trừ một số cột trong bảng, chỉ cần sửa đổi truy vấn chọn dữ liệu từ INFORMATION_SCHEMA cơ sở dữ liệu như SELECT COLUMN_NAME FROM INFORMATION_SCHEMA.COLUMNS c WHERE TABLE_SCHEMA = @schema AND TABLE_NAME = @table AND COLUMN_NAME NOT IN (**columns to exclude**) .



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Làm cách nào để cắt bớt một bảng bằng Doctrine 2?

  2. Làm thế nào tôi có thể kiểm tra ngày gửi là giữa hai ngày trong cơ sở dữ liệu?

  3. Phạm vi giới hạn của MySQL

  4. Cách sử dụng các giá trị trả về của một tác vụ trong một tác vụ khác cho một máy chủ lưu trữ khác trong ansible

  5. cách chèn nhiều mảng vào cơ sở dữ liệu bằng PHP