なぜ抽出条件を ( ) で囲っているのですか?

サブクエリを括弧で囲むことで、その結果を先に出した上でメインのクエリに渡すことができます。
2022年12月11日
ユーザー
select * from posts where likes = (select max(likes) from posts);

で出来るなら

select * from posts where likes = select max(likes) from posts;

でも実行できると思い実行しましたらエラーが出ました。
何か違いがあるのでしょうか?
そういった仕様と考えたほうがいいのでしょうか?

自分としては select 文が 2 つある事でエラーが起きるのかなと考えています。() がある事で値としての認識されているのではないかなと…。

細かい事ですが何か理由があれば知りたいのでお願いします。

この回答を見るにはプレミアムサービスへの登録が必要です

プレミアムサービスとは?