2015-01-26 100 views
0

有没有办法来此查询转换成一个新的功能:添加search_column功能到mysql

SELECT DISTINCT TABLE_NAME FROM INFORMATION_SCHEMA.COLUMNS 
WHERE COLUMN_NAME IN ('current_edition') AND TABLE_SCHEMA='db_local'; 

其中current_editiondb_local是变量,这样就可以搜索使用列:

search_column('column_name', 'database'); 
+0

[使用php变量创建动态mysql查询]的可能重复(http://stackoverflow.com/questions/15794179/create-a-dynamic-mysql-query-using-php-variables) – 2015-01-26 22:58:41

回答

1

你想用function返回一个table在MySQL,因为我知道你不能,但你可以使用一个procedure

DELIMITER $$ 
CREATE DEFINER=`root`@`%` PROCEDURE search_column(cl_name VARCHAR(100),db_name VARCHAR(100)) 
BEGIN 
    SELECT DISTINCT TABLE_NAME FROM INFORMATION_SCHEMA.COLUMNS 
    WHERE COLUMN_NAME like cl_name 
    AND TABLE_SCHEMA=db_name; 
END;