十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
mysql不允许变量直接作为字段名或表名进行查询
创新互联建站主营灞桥网站建设的网络公司,主营网站建设方案,app开发定制,灞桥h5小程序开发搭建,灞桥网站营销推广欢迎灞桥等地区企业咨询
所以只能通过创建sql语句的方式实现
SET @province = '地区';
SET @strsql = concat('SELECT Fld1 AS ',@province,' FROM zgqy_2002_2;');
PREPARE stmt FROM @strsql;
EXECUTE stmt;
老弟你这需求估计也是没多大用处,首先软件表示跟sql传输表示有区别的。
-------------------------------------------------------------------------------------------
如果你要做的话,方案我有两个,第一个是预处理语句
你 谷歌 -》mysql 预处理语句
--------------------------------------------------------------------------------------------
一般类似
PREPARE STMT_Edwin FROM ‘SELECT ? as ? from 表’ ;
SET @A=表字段写上;
SET@B=别名写上; --你的是工号
EXECUTE STMT_Edwin USING @A,@B;
----------------------------------------------------------------------------
另一种思路是临时表
declare @tb table(
编号 int,
工号 [nvarchar](50)
);
insert into @tb
select PM.auto_id,PM.PID from 表;
select * from @tb
------------------------------------------------------
如上在SqlServer下通过,mysql也一样,调试调试改改就行!
然后就是
编号 工号
1 U12
2 U22
这样的显示!
-----------------------------------------------------------------------
1、新建一个test数据库,在数据库中创建一个data数据表,在表内插入四条测试数据。
2、新建一个php文件,命名为test.php,用于讲解如何使用sql统计某一个字段数字的总和。
3、在test.php文件内,使用new创建一个mysqli数据库连接,在mysqli方法内,使用数据库账号、密码、数据库名称连接数据库。
4、在test.php文件内,使用set_charset方法设置获得数据的编码为utf8,同时,使用if语句判断连接数据库是否成功,如果不成功,则输出错误信息。
5、在test.php文件内,编写sql语句,使用sum方法计算指定字段数字的总和,例如 ,这里计算num字段数字的总和。
6、在test.php文件内,使用query执行sql语句,最后,通过fetch_all方法将获得的总和数据资源转换为二维数组。
SELECT username name FROM `user` "username"是原字段名称, 这个"name"就是别名~