分类 "Database" 下的文章

问题:sqlalchemy如何对同一张表查询两次?

解决:使用sqlalchemy.orm模块中的aliased

方法:

from sqlalchemy.orm import aliased

ToUser = aliased(User)
self.db.query(
    User.id, User.username, ToUser.id.label('to_user'), ToUser.username.label('to_username'),
    Reply.body, Reply.create_time).filter(Reply.to_user == ToUser.id, Reply.create_id == User.id
    ).all()

阅读全文

问题:如何查询mysql数据表的注释?

方法:

SELECT COLUMN_NAME, column_comment FROM INFORMATION_SCHEMA.Columns WHERE
    table_name='users' AND table_schema='dongman';

拓展:

/* 查询数据库 ‘dongman’ 所有表注释 */
SELECT TABLE_NAME,TABLE_COMMENT FROM information_schema.TABLES WHERE table_schema='dongman';

阅读全文

问题:sqlalchemy对应的select as是什么?

方法:

from sqlalchemy import literal
self.db.query(
    User.name.label('username'), Grade.name.label('grade_name'),
    literal('天鸿小学').label('school_name')).filter(User.grade_id == Grade.id).all()

阅读全文

问题:postgresql的sql语句有哪些?如何显示数据库、数据表?

方法:

1、显示数据库

mysql: show databases;
postgresql: select datname from pg_database;

2、显示数据表

mysql: show tables;
postgresql: SELECT table_name FROM information_schema.tables WHERE table_schema = 'mydatabases';
注:mydatabase为数据库名

阅读全文