
こんにちは。
PostgreSQL 7でシステムを開発中ですが、同一テーブルから「列~の値が■のものを2件、列~の値が▲のものを2件、列~の値が●のものを2件、それ以外のものからランダムに2件を取得」したいのですが、実現できなくて困っています。
select * from table where culumn = 'data1' limit 2
union
select * from table where culumn = 'data2' limit 2
というようなことなのですが、これでは「limit 2」でparse errorとなってしまいます。
できれば上記のSQL定義でビューを作りたいところなのですが、いい方法はないでしょうか?
よろしくお願いします。
No.1ベストアンサー
- 回答日時:
unionを使っているため、limit使用時に全体でのlimitなのか各SELECT文ごとのlimitなのかでわからずエラーになるようです。
そこで、括弧で括ってやるといいです。
ところで、■▲●で2件取得のところは ORDER BYでソートしなくていいんでしょうか?
該当する列が元々2件だけしかないなら別ですが・・・。
(select * from table where culumn = '■' limit 2)
union
(select * from table where culumn = '▲' limit 2)
union
(select * from table where culumn = '●' limit 2)
union
(select * from table where culumn != '■' and culumn != '▲'and culumn != '●' order by random() limit 2)
ありがとうございます。
教えていただいた方法で期待通りに動きました。
括弧でくくるという発想がでてきませんでした。基礎からやり直します。ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- PHP php my adminより取り出したデータ表示 2 2022/06/15 11:56
- PHP PHP MySql ページング 2 2022/09/20 06:38
- SQL Server [SQLServer] テーブル名からカラム名を取得する 1 2022/08/23 21:20
- MySQL SQLです。こんな感じですか?あってますか? うまくいきません教えてくださいお願いします 1 2023/07/08 15:27
- Access(アクセス) アクセス where句を使用して複数条件抽出をするには 2 2022/08/29 13:24
- MySQL うまくいきません教えてくださいお願いしますSQLです。クエリ構文です。 1 2023/07/07 12:39
- MySQL 下記の問合せを行うクエリを、PhpMyAdminで作成して実行せよ。 日本の全市区町村を人口密度が低 1 2023/06/18 19:51
- Oracle 下記のsqlで取得されるレコード以外を取得する方法ありますでしょうか。 SELECT B.番号, B 2 2022/04/20 23:21
- MySQL 複数DBテーブルからのデータ取得 3 2022/05/17 15:02
- MySQL SQLです。下記の問合せを行うクエリを、PhpMyAdminで作成して実行せよ。 「昨年の各月の総降 1 2023/07/01 00:32
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
SELECT INTOで一度に複数の変数...
-
複数の条件に該当する結果を、...
-
【SQL】他テーブルに含まれる値...
-
sqlに記述できない文字
-
改行を含んだデータのインポート
-
フラグをたてるってどういうこ...
-
定義域関数の抽出と連結表示に...
-
UPDATEで既存のレコードに文字...
-
副問合せを使わずにUNIONと同様...
-
truncate tableを使って複数の...
-
既にテーブルが存在する場合の...
-
Where句のNot条件をAnd条件にし...
-
グループごとの一番小さい値を...
-
1つのSQLで2段階の抽出を行い...
-
オラクルのUPDATEで複数テーブル
-
右向き、左向きの速度が最大と...
-
フラグの文字型は?
-
Accessで最新のレコード...
-
MySQLで数字の値のもののみを取...
-
selectの単純繰り返し
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
SELECT INTOで一度に複数の変数...
-
複数の条件に該当する結果を、...
-
SELECTした結果に行番号を求めたい
-
データの入れ替えを同時に行な...
-
UPDATEの更新前の値を取得したい
-
pg/plsqlでのカーソルのLIK...
-
文字列の並び替えについて
-
プログラムよりファンクション...
-
oleDBでnumeric形式の小数部分...
-
PLPGSQLでの複数行複数列
-
数値を単一引用符で囲むのはど...
-
複数カラムでdistinct
-
副問合せで複数列の値リストの...
-
テーブル間の差分抽出方法は?...
-
複雑なUPDATE文2
-
ビット単位のソート
-
FETCH した行が取り出せない
-
SQLで任意の列の最大値の定数は...
-
ユーザIDのソート
-
SELECTした結果に通番を振りたい
おすすめ情報