sql怎么查询数据库中所有的表

MySQL/MariaDB:
基础: SHOW TABLES;
过滤: SHOW TABLES LIKE '%pattern%';
全数据库: SELECT table_schema, table_name FROM information_schema.tables WHERE table_schema NOT IN ('information_schema', 'mysql', 'performance_schema', 'sys');
PostgreSQL:
基础: SELECT FROM pg_catalog.pg_tables;
用户表: SELECT tablename FROM pg_tables WHERE schemaname = 'public';
按所有者: SELECT FROM pg_catalog.pg_tables WHERE tableowner = 'someuser';
SQLite:
基础: SELECT name FROM sqlite_master WHERE type = 'table';
过滤: SELECT name FROM sqlite_master WHERE type = 'table' AND name LIKE '%pattern%';
临时表: SELECT name FROM sqlite_master WHERE type = 'table' UNION ALL SELECT name FROM sqlite_temp_master WHERE type = 'table';
SQLServer:
基础: SELECT FROM information_schema.tables; 或 SELECT name FROM sys.tables;
过滤数据库: SELECT FROM database_name.information_schema.tables;
Oracle:
基础: SELECT table_name FROM all_tables WHERE owner = 'YOUR_SCHEMA';
当前用户: SELECT table_name FROM user_tables;
确保有权限。
加WHERE减少数据。
查官方文档。

sql查询数据库中有某个值的所有表

1 、直接在SQL Server里查数据库。
2 、看表名,用户表和系统表分开查。
3 、找特定表的字段名。
4 、查字段名和类型,一个不落。
5 、找主键,数据库类型全掌握。

我自己也在用,效果不错,但具体项目得你自己掂量。

SQL中查询某个表是否存在的几种方法

直接说,查表存在不就一个SELECT?
比如: sql SELECT 1 FROM User_TagTbl LIMIT 1 ;
如果表存在,这条SQL会返回结果。

或者用信息表: sql SELECT COUNT() FROM information_schema.tables WHERE table_schema = 'your_database_name' AND table_name = 'User_TagTbl';
返回1 表示存在。

还有,不删除表,直接创建同名的新表,旧的会被覆盖。
记住,数据库操作谨慎点。