         XCTAssertEqual(
             sql(dbQueue, tableRequest.filter(2 * (Col.age * Col.age))),
             "SELECT * FROM \"readers\" WHERE 2 * (\"age\" * \"age\")")
+    }
+    
+    func testJoinedMultiplyOperator() throws {
+        let dbQueue = try makeDatabaseQueue()
+        
+        XCTAssertEqual(
+            sql(dbQueue, tableRequest.select([].joined(operator: .multiply))),
+            "SELECT 1 FROM \"readers\"")
+
+        XCTAssertEqual(
+            sql(dbQueue, tableRequest.select([Col.age, Col.age].joined(operator: .multiply))),
+            "SELECT \"age\" * \"age\" FROM \"readers\"")
+        
+        XCTAssertEqual(
+            sql(dbQueue, tableRequest.select([Col.age, 2.databaseValue, Col.age].joined(operator: .multiply))),
+            "SELECT \"age\" * 2 * \"age\" FROM \"readers\"")
+
+        // Not flattened
+        XCTAssertEqual(
+            sql(dbQueue, tableRequest.select([
+                [Col.age, 1.databaseValue].joined(operator: .multiply),
+                [2.databaseValue, Col.age].joined(operator: .multiply),
+                ].joined(operator: .multiply))),
+            "SELECT (\"age\" * 1) * (2 * \"age\") FROM \"readers\"")
     }
     
     func testInfixDivideOperator() throws {

            "SELECT * FROM \"readers\" WHERE 1 + ((\"age\" > 1) AND (\"age\" IS NULL))")
    }
    
    func testInfixMultiplyOperator() throws {
        let dbQueue = try makeDatabaseQueue()
        

            "SELECT * FROM \"readers\" WHERE 1 - ((\"age\" > 1) AND (\"age\" IS NULL))")
    }
    
    func testInfixAddOperator() throws {
        let dbQueue = try makeDatabaseQueue()
        
        XCTAssertEqual(
