AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / user-2058

Mokus's questions

Martin Hope
Mokus
Asked: 2013-01-10 05:36:09 +0800 CST

浮动类型的奇怪行为

  • 2

我有下表:

+------------+--------+------+-----+---------+----------------+
| Field      | Type   | Null | Key | Default | Extra          |
+------------+--------+------+-----+---------+----------------+
| id         | double | NO   | PRI | NULL    | auto_increment |
| az1        | float  | YES  |     | 989898  |                |
| el1        | float  | YES  |     | 989898  |                |
| az2        | float  | YES  |     | 989898  |                |
| el2        | float  | YES  |     | 989898  |                |
| rfs_angle  | float  | YES  |     | 989898  |                |
| scan_speed | float  | YES  |     | 989898  |                |
+------------+--------+------+-----+---------+----------------+

我插入此数据超过 100 次

INSERT INTO lidar_traj_table (az1, el1, az2, el2, rfs_angle, scan_speed)  VALUES (49.100, 0.000,989898,8.000,1.0,1.000)

当我尝试选择数据时,我什么也没收到:

SELECT * FROM lidar_traj_table WHERE az1=49.1

当我选择比 49.1 更小的数据时,我得到了所有行

SELECT * FROM lidar_traj_table WHERE az1<=49.1

为什么我得到的结果是空的:

SELECT * FROM lidar_traj_table WHERE az1=49.1
mysql
  • 1 个回答
  • 159 Views
Martin Hope
Mokus
Asked: 2012-11-09 00:37:27 +0800 CST

如何在不重启 MySQL 的情况下重新初始化一些 MyISAM 表?

  • 1

我正在使用rsync将一些测量数据从一台 PC 复制到服务器。

是否可以在不重启 MySQL 服务器的情况下加载新的 MyISAM 表?

mysql myisam
  • 1 个回答
  • 164 Views
Martin Hope
Mokus
Asked: 2012-07-11 11:15:19 +0800 CST

如何通过一次查询选择数据?

  • 1

我有下表:

桌子xwrh9_betty_dictionary_ids

+----+----------+-------+-------------+---------------------+-------+-------+
| id | ordering | state | checked_out | checked_out_time    | lang1 | lang2 |
+----+----------+-------+-------------+---------------------+-------+-------+
|  3 |        0 |     1 |           0 | 0000-00-00 00:00:00 |    18 |    19 |
|  4 |        0 |     1 |           0 | 0000-00-00 00:00:00 |    18 |    20 |
|  5 |        0 |     1 |           0 | 0000-00-00 00:00:00 |    18 |    21 |
|  6 |        0 |     1 |           0 | 0000-00-00 00:00:00 |    18 |    22 |
+----+----------+-------+-------------+---------------------+-------+-------+

桌子xwrh9_betty_dictionary_words

+----+----------+-----------+-------+--------+----------------+
| id | language | word      | state | domein | characteristic |
+----+----------+-----------+-------+--------+----------------+
| 18 | en       | sad       |     1 | sad    | sad            |
| 19 | en       | sub       |     1 | am     | al             |
| 20 | hu       | sub2      |     1 | wed    | wed            |
| 21 | ro       | sub3      |     1 | sd     | sd             |
| 22 | en       | sds       |     1 | ss     | sd             |
| 23 | en       | alamkorta |     1 | sd     | sd             |
+----+----------+-----------+-------+--------+----------------+

我有以下查询,是否可以优化?

SELECT b.id, b.language, b.word, b.state, b.domein, b.characteristic, c.lang1 
FROM xwrh9_betty_dictionary_ids as a  
   INNER JOIN ( SELECT lang1 FROM xwrh9_betty_dictionary_ids WHERE lang2=19) as c  
   LEFT JOIN xwrh9_betty_dictionary_words as b 
      ON ((a.lang2=b.id or b.id=c.lang1) AND b.id<>19)  
WHERE a.lang1=c.lang1 GROUP BY id;

输出如下:

+------+----------+------+-------+--------+----------------+-------+
| id   | language | word | state | domein | characteristic | lang1 |
+------+----------+------+-------+--------+----------------+-------+
|   18 | en       | sad  |     1 | sad    | sad            |    18 |
|   20 | hu       | sub2 |     1 | wed    | wed            |    18 |
|   21 | ro       | sub3 |     1 | sd     | sd             |    18 |
|   22 | en       | sds  |     1 | ss     | sd             |    18 |
+------+----------+------+-------+--------+----------------+-------+
optimization
  • 1 个回答
  • 81 Views
Martin Hope
Mokus
Asked: 2012-06-19 06:27:22 +0800 CST

如何重置行的索引?

  • 1

我想从旧表中选择数据并将其插入到新表中:

CREATE TABLE test2 LIKE test1
INSERT INTO test2 SELECT timestamp, datenum FROM test1 WHERE datenum>=23 and datenum<=1000000 ON DUPLICATE KEY UPDATE datenum=VALUES(datenum)

我在 test2 和 test1 中也有和id列,但我想id从 1 开始。如果我使用上面的查询,我会收到以下错误

ERROR 1136: Column count doesn't match value count at row 1


INSERT INTO test2 SELECT * FROM test1 WHERE datenum>=23 and datenum<=1000000 ON DUPLICATE KEY UPDATE datenum=VALUES(datenum)

在这种情况下,id 从 3239 开始。

mysql index
  • 1 个回答
  • 209 Views
Martin Hope
Mokus
Asked: 2011-11-19 07:15:45 +0800 CST

在 MySQL 中创建自定义日志表

  • 2

是否可以创建自定义日志表。例如,我有 10 个模式,如果有人使用“areva”模式,我想记录。我想知道最后执行的命令时间和用户。这在 MySQL 中可能吗?

mysql monitoring
  • 1 个回答
  • 4932 Views
Martin Hope
Mokus
Asked: 2011-11-18 23:38:58 +0800 CST

INFORMATION_SCHEMA 选择错误

  • 2

我正在尝试从中选择数据,information_schema但出现以下错误。我怎样才能解决这个问题?

mysql> SELECT * FROM information_schema.tables ;
ERROR 1018 (HY000): Can't read dir of '.' (errno: 13)
mysql ubuntu
  • 4 个回答
  • 4604 Views
Martin Hope
Mokus
Asked: 2011-11-18 09:18:10 +0800 CST

获取最后执行的命令时间

  • 3

我有存储在 Trucrypt 分区中的表,如果用户不使用 mysql,我想断开连接。有,INFORMATION_SCHEMA.PROCESSLIST但我想知道用户上次激活时间。例如,如果没有人在 10 分钟内运行 mysql 命令,那么我可以卸载 Trucrypt。我该如何检查?

mysql monitoring
  • 1 个回答
  • 1945 Views
Martin Hope
Mokus
Asked: 2011-09-20 00:59:49 +0800 CST

动态变化的数据库

  • 3

我们有一个数据库,一些数据存储在 Trucrypt 文件夹中,我的问题是如何包含这个 trucrypt 文件夹。数据类型是 MyISAM。我看到有一个符号链接,但我不太清楚如何使用它。

mysql myisam
  • 3 个回答
  • 817 Views
Martin Hope
Mokus
Asked: 2011-08-30 02:28:05 +0800 CST

按指定列对表进行预排序

  • 4

我有一张桌子,我总是通过订购一列来获取数据。就我而言,我按datenum. 但是,由于排序,选择非常慢。

是否可以在之后订购桌子datenum。此列被定义为唯一的。如果定义为索引,选择会更快吗?

mysql innodb
  • 2 个回答
  • 13659 Views
Martin Hope
Mokus
Asked: 2011-08-24 14:02:45 +0800 CST

用一个 DELETE 清除所有表

  • 4

是否可以一次请求清除所有表?我试过以下没有结果。

DELETE a,b,c,d,e,f,g,h,i,j,k,l,m,n,o
FROM jos_bet_details as a, jos_bet_1x2 as b, jos_bet_1x2_best as c, jos_bet_1x2_prev as d,
     jos_bet_1x3 as e, jos_bet_1x3_best as f, jos_bet_1x3_prev g, jos_bet_hcp as h,
     jos_bet_hcp_best i, jos_bet_hcp_prev j, jos_bet_ou k,jos_bet_ou_best l,
     jos_bet_ou_prev m, jos_bet_debug n, jos_bet_deleted o
mysql delete
  • 4 个回答
  • 22919 Views
Martin Hope
Mokus
Asked: 2011-08-23 00:47:18 +0800 CST

MySQL 表不显示在 phpMyAdmin 和 MySQLWorkbench

  • 7

我刚刚设置了 phpMyAdmin,我遇到了这个问题:当我登录时,我看不到任何表格。

我用 MySQLWorkbench 试过这个,我得到了同样的结果。

有什么建议么 ?

mysql mysql-workbench
  • 2 个回答
  • 23519 Views
Martin Hope
Mokus
Asked: 2011-08-05 08:39:16 +0800 CST

将数据库数据转移到另一列

  • 1

我有下表

id  |   ev_id   | ev_loc_id |   a   |   b   | prev_a    |   prev_b

如果表中不存在 (ev_id AND ev_loc_id),那么我就插入它们,否则我将把 a 放到 prev_a,将 b 放到 prev_b。

我通过选择解决了这个问题:

SELECT a, b FROM tb WHERE ev_id=XX AND ev_loc_id=XXX

如果数组为空而不是我插入的新数据,否则我将 a、b 和选定的值替换为 prev_a、prev_b

有最省时的解决方案吗?

mysql select
  • 1 个回答
  • 684 Views
Martin Hope
Mokus
Asked: 2011-08-02 13:51:46 +0800 CST

MySQL 查询优化:赌注和平均数

  • 2

我有以下选择字符串:

SELECT * , AVG( `q1` ) AS betavg, COUNT( bet_id ) AS nr, MAX( q1 ) AS qmax, 
(MAX( q1 ) - AVG( `q1` )) AS diff FROM jos_bet_1x3_best GROUP BY `bet_id`
HAVING ( COUNT( `bet_id` ) >2 AND betavg <= q1
AND (qmax - MIN( q1 )) < 0.5 AND q1 <3)
ORDER BY `diff` DESC LIMIT 0 , 30

我可以以某种方式优化它吗?我想选择 q1 大于平均值的数据。

这是示例数据:

+-------+---------------+------+------+------+---------------------+-----------+
| id    | bet_id        | q1   | qx   | q2   | timestamp           | bookie_id |
+-------+---------------+------+------+------+---------------------+-----------+
| 32665 | 4e371a6e23735 | 1.90 | 3.50 | 3.80 | 2011-08-01 21:28:14 |         4 |
| 33410 | 4e371a6e23735 | 2.02 | 3.25 | 3.70 | 2011-08-01 21:28:31 |         8 |
| 34423 | 4e371a6e23735 | 2.05 | 3.25 | 3.25 | 2011-08-01 21:30:08 |         3 |
| 32666 | 4e371a6e23fe8 | 2.20 | 3.25 | 3.20 | 2011-08-01 21:28:14 |         4 |
| 33407 | 4e371a6e23fe8 | 2.17 | 3.20 | 3.35 | 2011-08-01 21:28:31 |         8 |
| 34252 | 4e371a6e23fe8 | 2.20 | 3.25 | 3.25 | 2011-08-01 21:28:52 |         2 |
| 34418 | 4e371a6e23fe8 | 2.05 | 3.25 | 3.30 | 2011-08-01 21:30:08 |         3 |
| 32667 | 4e371a6e24750 | 1.40 | 4.25 | 8.00 | 2011-08-01 21:28:14 |         4 |
| 33406 | 4e371a6e24750 | 1.45 | 4.10 | 7.10 | 2011-08-01 21:28:31 |         8 |
| 34253 | 4e371a6e24750 | 1.40 | 4.20 | 8.50 | 2011-08-01 21:28:52 |         2 |
| 34425 | 4e371a6e24750 | 1.45 | 3.75 | 7.00 | 2011-08-01 21:30:08 |         3 |
| 32668 | 4e371a6e24ee4 | 1.80 | 3.50 | 4.25 | 2011-08-01 21:28:14 |         4 |
| 33462 | 4e371a6e24ee4 | 1.87 | 3.35 | 4.15 | 2011-08-01 21:28:31 |         8 |
| 34251 | 4e371a6e24ee4 | 1.75 | 3.55 | 4.65 | 2011-08-01 21:28:52 |         2 |
| 34420 | 4e371a6e24ee4 | 1.85 | 3.25 | 4.00 | 2011-08-01 21:30:08 |         3 |
+-------+---------------+------+------+------+---------------------+-----------+

最后我在drex方案的基础上做了另外一个方案:

SELECT A. * , ( A.q1 - tb1.betavg) AS diff, tb1.betavg, tb1.nr FROM jos_bet_1x3_best A 
    INNER JOIN (
        SELECT bet_id, AVG( `q1` ) AS betavg, COUNT( bet_id ) AS nr
        FROM jos_bet_1x3_best GROUP BY `bet_id`
    ) AS tb1
USING ( bet_id ) WHERE tb1.nr >2 AND (A.q1 - tb1.betavg) >0
ORDER BY diff DESC LIMIT 0 , 30
mysql query
  • 2 个回答
  • 208 Views
Martin Hope
Mokus
Asked: 2011-08-02 06:31:38 +0800 CST

表中的字符集编码

  • 3

我有以下数据:Trollhättan

  • 如果我打印出来并将标题设置为utf-8,那么这就是浏览器中的输出。

  • 如果我没有utf-8在标题中设置,Trollhättan. 但是,当我将数据存储在数据库中并进行检查时phpmyadmin,我得到以下字符串:Trollhättan。

  • 当我将标头设置为 时utf-8,我得到了这个字符串:Trollhättan在这个旁边Trollhättan。

既然是表latin1_swedish_ci,我一定要在表中使用UTF-8吗?

mysql character-set
  • 2 个回答
  • 969 Views
Martin Hope
Mokus
Asked: 2011-07-22 14:18:08 +0800 CST

复杂的mysql选择

  • 1

我有下表,

id | booki_id | bet_id   |      bet  | bettype | line | odds 
1  |   123    |   321    |        1  |    3way |  0,0 |  2.3
2  |   123    |   321    |        2  |    3way |  0,0 |  3.4
3  |   123    |   322    |        1  |    3way |  0,0 |  1.1
4  |   123    |   322    |        2  |    3way |  0,0 |  7.4
5  |   123    |   323    |        1  |    3way |  0,0 |  1.3
6  |   123    |   323    |        2  |    3way |  0,0 |  9.4

我怎样才能得到以下数组?或者我可以选择一个吗?

array
(
[0]=>array
(
   "booki_id"=>123,
   "betid"=>321,
   "bet"=>array([1]=>2.3
                [2]=>3.4
                ),
    "bettype"=>"3way",
    "line"=>0
),
[1]=>array
(
   "booki_id"=>123,
   "betid"=>323,
   "bet"=>array([1]=>1.3
                [2]=>9.4
                ),
    "bettype"=>"3way",
    "line"=>0
)
[2]=>array
(
   "booki_id"=>123,
   "betid"=>322,
   "bet"=>array([1]=>1.1
                [2]=>7.4
                ),
    "bettype"=>"3way",
    "line"=>0
)
)

它是按 bet[1] 排序的;

更新:

id | booki_id | bet_id   |      bet  | bettype | line | odds 
1  |   123    |   321    |        1  |    3way |  0,0 |  2.3
2  |   123    |   321    |        2  |    3way |  0,0 |  3.4
3  |   123    |   321    |        x  |    3way |  0,0 |  2.4
4  |   123    |   322    |        1  |    3way |  0,0 |  1.1
5  |   123    |   322    |        2  |    3way |  0,0 |  7.4
6  |   123    |   322    |        x  |    3way |  0,0 |  3.4
7  |   123    |   323    |        1  |    3way |  0,0 |  1.3
8  |   123    |   323    |        2  |    3way |  0,0 |  9.4
9  |   123    |   323    |        x  |    3way |  0,0 |  6.4

有时我必须按 bet[2] 或 bet[x] 进行排序;

mysql select
  • 1 个回答
  • 195 Views
Martin Hope
Mokus
Asked: 2011-07-20 23:24:46 +0800 CST

错误代码 1117 列太多;表上的 MySQL 列限制

  • 40

我有一个包含 1699 列的表,当我尝试插入更多列时,我得到了,

错误代码:1117。列太多

在这张表中,我只有 1000 行。对我来说,最重要的是列数。桌子上有什么限制吗?我想创建 2000 列。那可能吗?

mysql table
  • 6 个回答
  • 75357 Views

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    连接到 PostgreSQL 服务器:致命:主机没有 pg_hba.conf 条目

    • 12 个回答
  • Marko Smith

    如何让sqlplus的输出出现在一行中?

    • 3 个回答
  • Marko Smith

    选择具有最大日期或最晚日期的日期

    • 3 个回答
  • Marko Smith

    如何列出 PostgreSQL 中的所有模式?

    • 4 个回答
  • Marko Smith

    列出指定表的所有列

    • 5 个回答
  • Marko Smith

    如何在不修改我自己的 tnsnames.ora 的情况下使用 sqlplus 连接到位于另一台主机上的 Oracle 数据库

    • 4 个回答
  • Marko Smith

    你如何mysqldump特定的表?

    • 4 个回答
  • Marko Smith

    使用 psql 列出数据库权限

    • 10 个回答
  • Marko Smith

    如何从 PostgreSQL 中的选择查询中将值插入表中?

    • 4 个回答
  • Marko Smith

    如何使用 psql 列出所有数据库和表?

    • 7 个回答
  • Martin Hope
    Jin 连接到 PostgreSQL 服务器:致命:主机没有 pg_hba.conf 条目 2014-12-02 02:54:58 +0800 CST
  • Martin Hope
    Stéphane 如何列出 PostgreSQL 中的所有模式? 2013-04-16 11:19:16 +0800 CST
  • Martin Hope
    Mike Walsh 为什么事务日志不断增长或空间不足? 2012-12-05 18:11:22 +0800 CST
  • Martin Hope
    Stephane Rolland 列出指定表的所有列 2012-08-14 04:44:44 +0800 CST
  • Martin Hope
    haxney MySQL 能否合理地对数十亿行执行查询? 2012-07-03 11:36:13 +0800 CST
  • Martin Hope
    qazwsx 如何监控大型 .sql 文件的导入进度? 2012-05-03 08:54:41 +0800 CST
  • Martin Hope
    markdorison 你如何mysqldump特定的表? 2011-12-17 12:39:37 +0800 CST
  • Martin Hope
    Jonas 如何使用 psql 对 SQL 查询进行计时? 2011-06-04 02:22:54 +0800 CST
  • Martin Hope
    Jonas 如何从 PostgreSQL 中的选择查询中将值插入表中? 2011-05-28 00:33:05 +0800 CST
  • Martin Hope
    Jonas 如何使用 psql 列出所有数据库和表? 2011-02-18 00:45:49 +0800 CST

热门标签

sql-server mysql postgresql sql-server-2014 sql-server-2016 oracle sql-server-2008 database-design query-performance sql-server-2017

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve