标签: database

SQL加入两个没有关系的表

我有不同的表具有相同的结构,我想通过他们的一个列加入他们.

问题是他们不在该列中共享信息.

Table 1 - Type A:

Name | Value

Table 2 - Type B:

Name | Value
Run Code Online (Sandbox Code Playgroud)

结果表:

(在一栏中)

nameFromA

nameFromB
...
Run Code Online (Sandbox Code Playgroud)

到目前为止,我尝试过:

SELECT TABLE1.NAME, TABLE2.NAME 
FROM TABLE1, TABLE2 
WHERE TABLE1.NAME = 'SearchQuery'
OR TABLE2.NAME = 'SearchQuery' LIMIT 2;
Run Code Online (Sandbox Code Playgroud)

我知道我的查询是错误的,因为我正在调用更多我想要的列,但我不知道如何在一列中加入所有内容.我怎么能做到这一点?

sql database datatable join

5
推荐指数
1
解决办法
1万
查看次数

Django查询速度极慢

我遇到了Django应用程序的问题.对模型Scope的查询极其缓慢,经过一些调试后我仍然不知道问题所在.

当我scope = Scope.objects.get(pk='Esoterik I')在django中查询db 时需要5到10秒.该数据库的主键少于10个条目和索引.所以这太慢了.在db上执行等效查询时,SELECT * FROM scope WHERE title='Esoterik I';一切正常,只需要大约50ms.

如果我使用一组结果进行查询,scope_list = Scope.objects.filter(members=some_user)然后执行例如print(scope_list)或迭代列表的元素,则会出现同样的问题.查询本身只需要几毫秒,但元素的打印或迭代再次需要5到10秒,但该集只有两个条目.

数据库后端是Postgresql.问题在本地开发服务器和apache上发生相同.

这里是模型的代码:

class Scope(models.Model):
    title = models.CharField(primary_key=True, max_length=30)

    ## the semester the scope is linked with
    assoc_semester  =   models.ForeignKey(Semester, null=True) 

    ## the grade of the scope. can be Null if the scope is not a class
    assoc_grade     =   models.ForeignKey(Grade, null=True)

    ## the timetable of the scope. can be null if the scope is not direct associated with …
Run Code Online (Sandbox Code Playgroud)

database django performance django-queryset django-postgresql

5
推荐指数
1
解决办法
7590
查看次数

使用Groupby时如何获得Count?

我有一个列名国家/地区,其中有3个条目,如下所示.在每个国家,我都有一组人在不同的栏目中工作.我想要一个计数查询,它可以计算人们在一个查询中每个国家的工作方式.

country
________
 India
 America
 China
Run Code Online (Sandbox Code Playgroud)

mysql database

5
推荐指数
1
解决办法
58
查看次数

如何将字符串转换为bitset?

是否有可能将像'1101'这样的字符串转换为MySQL中的BIT(4)等价物?我已经检查过CONVERT/CAST函数,但他们不允许这样做.

谢谢!

mysql sql database

5
推荐指数
1
解决办法
411
查看次数

mysql递归(tree)父子类

我是mysql的新手.这是我的表:

类别表:

id | name        | prent
----------------------------
1  |  os         | null
2  | linux       | 1
3  | ubuntu      | 2
4  | xubuntu     | 3
5  | lubuntu     | 3
6  | zubuntu     | 3
7  | zubuntu 2   | 6
8  | suse        | 2
9  | fedora      | 2
10 | windowse    | 1
11 | windowse xp | 10
12 | windowse 7  | 10
13 | windowse 8  | 10
14 | food …
Run Code Online (Sandbox Code Playgroud)

mysql sql database recursion

5
推荐指数
1
解决办法
1万
查看次数

创建在两个表上运行的触发器

我有两个表,COURSEOFFERING。他们的专栏是:

COURSE (
   courseId, 
   title, 
   cost, 
   duration
) 
Run Code Online (Sandbox Code Playgroud)

OFFERING (
    offeringID, 
    instructor, 
    startDate, 
    endDate, 
    courseId, 
    locationId
 ). 
Run Code Online (Sandbox Code Playgroud)

我想配置一个触发器,它确保了有5天(从时间列时间课程COURSE表)不能在十二月提供的(从startDateOFFERING表)。我提出了以下SQL查询:

CREATE OR REPLACE TRIGGER checkDuration
BEFORE INSERT OR UPDATE ON 
  (course c JOIN offering o
   ON   
   c.courseId = o.courseId)
FOR EACH ROW
BEGIN
  IF ((to_char(:new.startDate, 'fmMONTH') = 'DECEMBER') AND duration = 5) 
  THEN
     raise_application_error(-20001, 'Courses of five days duration cannot be run in December');
  END IF;
END;
Run Code Online (Sandbox Code Playgroud)

触发器已创建,但有错误。

sql database oracle triggers oracle10g

5
推荐指数
1
解决办法
3万
查看次数

SQL - 使用Max创建的时间戳值返回数据的不同行

在我的程序中,我审计传入的数据,可以是4种类型.如果数据满足所有必需条件,则会在表列中成功存储,以及将行输入表中的消息类型和时间戳.

由于诸如审计之类的连接问题等问题,数据也可能被错误地写入表中.程序将重试审核此数据,如果成功将写入新行,则成功.因此,您看到我现在有2行用于该特定数据消息,一行成功,一行有错误,两者都有不同的时间戳.(成功具有最新时间戳而不是错误记录.)

第三条消息被拒绝,并且如果传入的数据不符合要求的标准,则会写入记录,同样使用创建时间戳.

我想做的是编写一个Sybase SQL查询,仅回退每个收到的消息的记录,具有最高的时间戳.

因此,使用上面的错误示例,我不想返回错误记录,只有相应的成功记录从进程重试时才成功.

我想到了类似下面的东西......

SELECT distinct(*) 
    FROM auditingTable
        WHERE timestamp = (SELECT MAX(timestamp) from auditingTable)
Run Code Online (Sandbox Code Playgroud)

虽然我知道这只会带回1条记录,整个表格中的时间戳最高.

我怎样才能收到收到的每封邮件的最新记录,无论其状态如何?

欢迎任何想法!

sql database sybase

5
推荐指数
2
解决办法
2万
查看次数

在两台机器上保持2个mysql dbs相同

我在两台机器上有两个mysql数据库.假设首先是生产数据库,第二个是相同的克隆.我的php应用程序使用生产数据库默认.但我需要同时让两个dbs相同.这意味着我需要解决生产数据库不可用的情况(例如连接错误),所以我只需手动设置第二个,我的应用程序照常运行.我想让它"失败".

我该怎么做?我想每分钟都进行一次转储,但是当db与许多数据复杂时,这不是一个好的解决方案......

php mysql database

5
推荐指数
1
解决办法
697
查看次数

Mysql2:关闭客户端连接

Mysql2用来查询数据库ruby.我通过以下方式初始化连接:

client = Mysql2::Client.new(:host => "localhost", :database => 'mydb', :username => "root")
Run Code Online (Sandbox Code Playgroud)

查询成功完成后,如何关闭客户端连接?如果我不关闭它,我很快就会达到最大可能的打开连接数.

感谢@joonty:

client.close

ruby database connection client mysql2

5
推荐指数
1
解决办法
8622
查看次数

Scheme中的数据库位置

我有一个程序,它使用本地数据库(sqlite3和我使用db模块).我想要做的是使用数据库而不知道它在哪里.

例如,如果我在我的程序中编码数据库的位置(如C:/ my documents/my program/localdb.db),它正常工作.

但是,如果我只写"localdb.db",即使数据库与使用数据库的.rkt文件位于同一文件夹中,它也找不到数据库.(我不知道如何,但在我的程序的早期版本中,它工作).

因此,我如何确保在不编码其位置的情况下使用数据库?

非常感谢!

database sqlite scheme racket

5
推荐指数
1
解决办法
96
查看次数