use DBIx::DAL; my $f = 3; dal->connect("mysql:dbname:localhost", "user", "pass"); my $id = query "foo[blah = 1 | 2, baz = ?](id)", $f; dal->disconnect; #### +----Table: colors-----+ | id | name | rating | +----+--------+--------+ | 1 | blue | 9 | | 2 | green | 10 | | 3 | red | 7 | | 4 | orange | 10 | | 5 | brown | 3 | +----+--------+--------+ #### my $color = "green"; my ($ans) = query "colors[name = ?](rating)", $color; print "Rating: ", $ans->[0], "\n"; # prints "Rating: 10\n" #### my ($color, $new_rating) = ("green", 8); query "colors[name = ?](rating) = ?", $color, $new_rating; #### +-----Table: items------+ | id | name | color_id | +----+-------+----------+ | 1 | sky | 1 | | 2 | brick | 3 | | 3 | tree | 5 | | 4 | water | 1 | +----+-------+----------+ #### my ($item) = ("sky"); my ($ans) = query "colors[id = items[name = ?](color_id)](rating)", $item; print "Rating: ", $ans->[0], "\n"; # prints "Rating: 9\n" #### my ($item, $color) = ("leaf", "green"); query "items(name, color_id) = ?, colors[name = ?](id)";