我正在尝试从包含列“lang”和“project”的指定数据库中选择所有表。这就是我正在做的事情:
SELECT DISTINCT(ISC1.TABLE_NAME) AS `table` FROM INFORMATION_SCHEMA.COLUMNS AS ISC1
JOIN INFORMATION_SCHEMA.COLUMNS AS ISC2 ON
(ISC1.TABLE_SCHEMA=ISC2.TABLE_SCHEMA AND ISC1.TABLE_NAME=ISC2.TABLE_NAME AND ISC2.COLUMN_NAME='project')
WHERE ISC1.COLUMN_NAME='lang' AND ISC2.COLUMN_NAME='project' AND ISC1.TABLE_SCHEMA='some_database'
- 它确实有效,但我觉得编写这种查询是一种不好的方式。如果有人可以改进它,那就太好了。
- 现在我必须更改此查询以选择所有具有“lang”列但没有“project”列的表。老实说,我不知道从哪里开始......
谢谢你的帮助