今天调试程序,发现了不知道哪位大神写的sql
select * from t1,(select * from t2) t2
where t1.id=t2.id
这个sql相当于
select * from t1, t2
where t1.id=t2.id
不知道脑子抽了还是怎么了能写出这么傻逼的sql。
于是乎我写了个傻逼sql生成器,专门生成这样的sql。
public class 傻逼sql生成器 {
public 傻逼sql生成器(String 表名, int sql层数) {
StringBuffer x = new StringBuffer();
String y = "select * from " + 表名;
StringBuffer z = new StringBuffer(" a0)");
for (int i = 1; i < sql层数; i++) {
x.append("select * from (\n");
for (int j = 0; j < i; j++) {
x.append(" ");
}
z.append("\n");
for (int k = sql层数 - 1; k > i; k--) {
z.append(" ");
}
z.append("a" + i + ")");
}
y = x + y+ z;
System.out.println(y.substring(0, y.length() - 1));
}
public static void main(String[] args) {
new 傻逼sql生成器("crm_salesman", 31);
}
}
输出:
select * from (
select * from (
select * from (
select * from (
select * from (
select * from (
select * from (
select * from (
select * from (
select * from (
select * from (
select * from (
select * from (
select * from (
select * from (
select * from (
select * from (
select * from (
select * from (
select * from (
select * from (
select * from (
select * from (
select * from (
select * from (
select * from (
select * from (
select * from (
select * from (
select * from (
select * from (
select * from crm_salesman a0)
a1)
a2)
a3)
a4)
a5)
a6)
a7)
a8)
a9)
a10)
a11)
a12)
a13)
a14)
a15)
a16)
a17)
a18)
a19)
a20)
a21)
a22)
a23)
a24)
a25)
a26)
a27)
a28)
a29)
a30)
a31
呵呵,我mysql本地环境select超过32层就执行不了了