PostgreSQL
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> PostgreSQL

cột không tồn tại lỗi ngay cả khi sử dụng từ khóa 'as'

thay thế where errors >= 1 với (cast(a.count as decimal) * 100 / b.count)>=1 vì không có cột nào được gọi là lỗi mà là cột dẫn xuất:

select a.date, (cast(a.count as decimal) * 100 / b.count) as errors
  from (select date(time) as date, count(status)
          from log
         where status != '200 OK'
         group by date
         order by date asc) as a
  join (select date(time) as date, count(status)
          from log
         group by date
         order by date asc) as b
    on a.date = b.date
 where (cast(a.count as decimal) * 100 / b.count) >= 1
 order by errors desc; 

HOẶC

Nó có thể được sử dụng như trên như sau:

select *
  from (select a.date, (cast(a.count as decimal) * 100 / b.count) as errors
          from (select date(time) as date, count(status)
                  from log
                 where status != '200 OK'
                 group by date
                 order by date asc) as a
          join (select date(time) as date, count(status)
                 from log
                group by date
                order by date asc) as b
            on a.date = b.date) q
 where errors >= 1
 order by errors desc;

trong một truy vấn con.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Làm cách nào để đặt mã hóa trong NpgsqlConnection

  2. Làm cách nào để thiết lập đường dẫn cho ứng dụng postgresql heroku?

  3. Tích hợp các công cụ để quản lý PostgreSQL trong sản xuất

  4. Cách truy vấn siêu dữ liệu của các chỉ mục trong PostgreSQL

  5. Truy vấn cơ sở dữ liệu chéo trong PostgreSQL