 
 // SELECT a.`firstname`, b.`comment` from `test1` as a INNER JOIN `test2` as b USING('id') WHERE a.`firstname` == "Daniel";
 
-pool.select(from: "test1").zip(with: pool.select(from: "test2"), .natural)/* { t1, t2 in
+pool.select(from: "test1").zip(with: pool.select(from: "test2")) { t1, t2 in
     t1["id"] == t2["id"]
-}*/.map { t1, t2 in
+}.map { t1, t2 in
     [t1["firstname"], t2["comment"]]
 }/*.filter { t1, t2 in
     t1["firstname"] == "Daniel"

}

extension Predicate {
    func render(dialect:Dialect, aliases:[String: String]) -> SQL {
        fatalError()
    }
}

public extension MetaValue {
    public func render(dialect:Dialect, aliases:[String: String]) -> SQL {
        fatalError()
    }
}


        case .inner(left: let left, right: let right, condition: .using(let columns)):
            let using = columns.map {"`\($0)`"}.joined(separator: ", ")
            return left.render(dialect: self, aliases: aliases) + " INNER JOIN " + right.render(dialect: self, aliases: aliases) + " USING(\(using))"
        case .inner(left: let left, right: let right, condition: .on(let predicate)):
            let on = predicate.render(dialect: self, aliases: aliases) ?? render(value: true)
            return left.render(dialect: self, aliases: aliases) + " INNER JOIN " + right.render(dialect: self, aliases: aliases) + " ON " + on
        default:
            fatalError("Not implemented")
        }
