Bawa baris dalam jadual pangkalan data yang mempunyai data dalam semua lajur ke hadapan
P粉504080992
P粉504080992 2023-08-18 15:48:44
0
1
564
<p>Dalam MySQL5.7, saya mempunyai lajur dengan 28 lajur dan 4000 baris. Saya ingin mendapatkan semua baris yang mempunyai data dahulu atau mendapatkan baris dengan lajur data yang paling banyak dahulu dan kemudian secara beransur-ansur mendapatkan data baris lain. Bagaimanakah saya boleh melaksanakan ini? </p> <p>Contohnya: Jadual: Pelajar</p> <table class="s-table"> <kepala> <tr> <th style="text-align:center;">name</th> <th style="text-align:center;">age</th> <th style="text-align:center;">address</th> </tr> </kepala> <tbody> <tr> <td style="text-align:center;">tan</td> <td style="text-align:center;">10</td> <td style="text-align:center;"></td> </tr> <tr> <td style="text-align:center;">gib</td> <td style="text-align:center;">10</td> <td style="text-align:center;">california</td> </tr> <tr> <td style="text-align:center;">hal</td> <td style="text-align:center;"></td> <td style="text-align:center;"></td> </tr> <tr> <td style="text-align:center;">pur</td> <td style="text-align:center;">12</td> <td style="text-align:center;"></td> </tr> </tbody> </table> <p>Output yang dijangkakan: 'gib' sepatutnya muncul dahulu, kemudian 'tan' atau 'pur' dengan hanya 1 lajur data, dan akhirnya 'hal' tanpa sebarang data. </p>
P粉504080992
P粉504080992

membalas semua(1)
P粉677573079

Dengan mengandaikan bahawa lajur name tidak pernah mempunyai nilai nol, kita boleh mencuba:

SELECT name, age, address
FROM yourTable
ORDER BY
    name,
    age IS NULL,      -- 非空年龄优先
    age,              -- 按年龄升序排序
    address IS NULL,  -- 非空地址优先
    address;          -- 按地址升序排序
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan