mysql> drop table if exists Cars;
Query OK, 0 rows affected (0.21 sec)
mysql> create table Cars (id int , details varchar(20),old varchar(3), new varchar(3));
Query OK, 0 rows affected (0.38 sec)
mysql> insert into Cars values
-> (6 , 'I am old car','old', null),
-> (7 , 'I am old car','old', null),
-> (8 , 'I am old car','old', null),
-> (9 , 'I am old car','old', null),
-> (10 , 'I am old car','old', null),
-> (6 , 'I am New car',null, 'new'),
-> (7 , 'I am New car',null, 'new'),
-> (8 , 'I am New car',null, 'new'),
-> (9 , 'I am New car',null, 'new'),
-> (10 , 'I am New car',null, 'new');
Query OK, 10 rows affected (0.22 sec)
Records: 10 Duplicates: 0 Warnings: 0
mysql>
mysql> select * from
-> (
-> SELECT Cars.details FROM Cars WHERE Old = 'Old'
-> LIMIT 0, 5
->) a
-> UNION all
-> (
-> SELECT Cars.details FROM Cars WHERE New = 'New'
-> LIMIT 0, 5
->)
-> ;
+--------------+
| details |
+--------------+
| I am old car |
| I am old car |
| I am old car |
| I am old car |
| I am old car |
| I am New car |
| I am New car |
| I am New car |
| I am New car |
| I am New car |
+--------------+
10 rows in set (0.03 sec)
サンプルデータに「Old」または「New」フィールドが含まれていません。テーブルの実際のスキーマを表示できますか? –
ユニオンには暗黙の区別が付いているので、両方の選択でcar.detailsが同じであると思われます。 union allに変更してみてください。 –
https://imgur.com/hr9ISke – user1780343