OKWAVEのAI「あい」が美容・健康の悩みに最適な回答をご提案!
-PR-
解決
済み

MySQLのサブクエリーでエラーがでます

  • すぐに回答を!
  • 質問No.108525
  • 閲覧数107
  • ありがとう数3
  • 気になる数0
  • 回答数3
  • コメント数0

お礼率 72% (66/91)

現在MySQLを使って開発をしています。
SQLもMySQLもまだあまり使ったことがないのでなにか大きな勘違いをしている
かもしれませんが、自分で作ったデータベースにMysqlコマンドでアクセスし、
以下のようにselectを行うとsyntaxエラーが発生します。

mysql> select CREATE_DATE from user where cust_id = (select cust_id from customer where memo = 'memo');
ERROR 1064: You have an error in your SQL syntax near 'select cust_id from customer where memo = 'memo')' at line 1

しかしサブクエリーの内容も、その前のselectもそれぞれ下記のように単体で実行すると正常に動作するので、文法的には間違っていないと思います。
ERROR 1064のsyntaxエラーは何を指しているのでしょうか?
ぜひご教示ください。

mysql> select cust_id from customer where memo = 'memo';
+---------+
| cust_id |
+---------+
| 1 |
+---------+
1 row in set (0.00 sec)


mysql> select CREATE_DATE from user where cust_id = '1';
+-------------+
| CREATE_DATE |
+-------------+
| 2001-07-23 |
+-------------+
1 row in set (0.00 sec)
通報する
  • 回答数3
  • 気になる
    質問をブックマークします。
    マイページでまとめて確認できます。

質問者が選んだベストアンサー

  • 回答No.1
レベル6

ベストアンサー率 40% (4/10)

MySQLってサブクエリつかえましたっけ?

Todoリストにはいっているのですが。
お礼コメント
volv

お礼率 72% (66/91)

サブクエリーが使えないDBってあったんですね・・!!
ありがとうございました。m(__)m
投稿日時 - 2001-07-24 12:17:46
-PR-
-PR-

その他の回答 (全2件)

  • 回答No.2
レベル12

ベストアンサー率 45% (207/457)

select CREATE_DATE from user where cust_id = (select cust_id from customer where memo = 'memo'); ではなく select CREATE_DATE from user where cust_id in (select cust_id from customer where memo = ...続きを読む
select CREATE_DATE from user where cust_id = (select cust_id from customer where memo = 'memo');
ではなく
select CREATE_DATE from user where cust_id in (select cust_id from customer where memo = 'memo');
ではないですか?
それか EXISTS ではないですか?
JOINでもいいと思いますが...

なおMySQLは使っておりませんので出来なかったらあしからず。
お礼コメント
volv

お礼率 72% (66/91)

お返事ありがとうございます。
残念ながら、inとexistを試してみましたが、どちらもダメでした・・
投稿日時 - 2001-07-24 12:32:37
  • 回答No.3
レベル12

ベストアンサー率 45% (207/457)

JOINは駄目? select user.CREATE_DATE from user , customer where user.cust_id = customer.cust_id and customer.memo = 'memo'; というは駄目ですか? ...続きを読む
JOINは駄目?
select user.CREATE_DATE from user , customer where user.cust_id = customer.cust_id and customer.memo = 'memo';
というは駄目ですか?
お礼コメント
volv

お礼率 72% (66/91)

たしかに上記の通りでできました。ありがとうございます。
たしかに知人からもjoinを使えばできるはず、と指摘を受けていたところ
なのでjoinについても勉強してみます。
現在はとりあえず最初に書いたサブクエリーを先に実行し、その結果を
再びselectするという2段階でやっていました。
投稿日時 - 2001-07-25 08:37:13
このQ&Aのテーマ
このQ&Aで解決しましたか?
関連するQ&A
-PR-
-PR-
このQ&Aにこう思った!同じようなことあった!感想や体験を書こう
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。

その他の関連するQ&A、テーマをキーワードで探す

キーワードでQ&A、テーマを検索する
-PR-
-PR-
-PR-

特集


いま みんなが気になるQ&A

関連するQ&A

-PR-

ピックアップ

-PR-
ページ先頭へ