Tag: postgresql

如何在PostgreSQL查询中显示行号?

我想显示PostgreSQL查询返回的每个logging的观察编号。 我认为在8.4窗口函数中可以执行这个function。

你如何在一个简单的PostgreSQL脚本中使用variables?

例如,在MS-SQL中,可以打开一个查询窗口并运行以下命令: DECLARE @List AS VARCHAR(8) SELECT @List = 'foobar' SELECT * FROM dbo.PubLists WHERE Name = @List 这在PostgreSQL中是如何完成的? 可以这样做吗?

将'serial'添加到Postgres中的现有列

我在我的Postgres 9.0数据库中有一个小表(〜30行),带有一个整数ID字段(主键),它当前包含从1开始的唯一顺序整数,但不是使用'serial'关键字创build的。 我怎么能改变这个表,以便从现在插入到这个表将导致这个领域的行为就像它已经被创build与'串行'作为一种types?

永久设置Postgresql模式path

我需要在Postgres中设置模式path,以便我不会每次都指定模式点表,例如schema2.table 。 设置模式path: SET SCHEMA PATH a,b,c 似乎只能用于mac上的一个查询会话,在closures查询窗口后,pathvariables将自己恢复为默认值。 我怎样才能使它永久?

你如何创build一个适合于PostgreSQL中的会话ID的随机string?

我想使用PostgreSQL在会话validation中使用一个随机string。 我知道我可以得到一个随机数与SELECT random() ,所以我尝试了SELECT md5(random()) ,但是这是行不通的。 我该怎么做?

将一列中的多个结果行连接成一列,按另一列分组

我有这样的桌子 Movie Actor A 1 A 2 A 3 B 4 我想获得电影的名称和该电影中的所有演员的名字,我希望结果是这样的格式: Movie ActorList A 1, 2, 3 我该怎么做?

检查Postgres数组中是否存在值

我需要一种方法来testing给定数组中是否存在一个值。 到目前为止,我想出了这样的事情 select '{1,2,3}'::int[] @> (ARRAY[]::int[] || value_variable::int) 但我一直在想,应该有一个更简单的方法,我只是不能看到它。 编辑:刚才意识到我可以做到这一点 select '{1,2,3}'::int[] @> ARRAY[value_variable::int] 这样好多了,我相信也足够了,但是如果你有其他的方法去做,请分享一下。

PostgreSQL错误“无法连接到服务器:没有这样的文件或目录”

像其他人一样,当我运行rake数据库时遇到了这个错误:在我的项目中进行迁移,甚至为我的Ruby on Rails 3.2应用程序尝试大部分数据库任务。 PGError(无法连接到服务器:没有这样的文件或目录。服务器是否在本地运行并接受Unix域套接字“/tmp/.s.PGSQL.5432”上的连接? 很久以前,我用Homebrew安装了PostgreSQL ,而且在尝试安装MongoDB之后,我的PostgreSQL安装从未如此。 我正在运行OS X v10.6 Snow Leopard。 什么是错的,我怎样才能更好地理解PostgreSQL是如何在Mac上安装的? 到目前为止(我认为)这告诉我PostgreSQL没有运行(?)。 ps -aef|grep postgres (ruby-1.9.2-p320@jct-ana) (develop) ✗ 501 17604 11329 0 0:00.00 ttys001 0:00.00 grep postgres 但是这是否告诉我PostgreSQL正在运行? ✪ launchctl load -w /usr/local/Cellar/postgresql/9.1.4/homebrew.mxcl.postgresql.plist (ruby-1.9.2-p136) homebrew.mxcl.postgresql: Already loaded 我该如何解决? 我没有看到什么? PS: ~/Library/LaunchAgents包含两个PostgreSQL .plist文件。 我不确定这是否相关。 org.postgresql.postgres.plist homebrew.mxcl.postgresql.plist 我试了下面的结果如下。 $ psql -p 5432 -h localhost psql: […]

Rails自动分配已经存在的id

我创build了一个新的logging,如下所示: truck = Truck.create(:name=>name, :user_id=>2) 我的数据库目前有几千个卡车实体,但是我把id分配给了其中的几个,这样就留下了一些id。 所以发生了什么事是轨道创build与id = 150的项目,它工作正常。 但是,它试图创build一个项目,并为其分配ID = 151,但该ID可能已经存在,所以我看到这个错误: ActiveRecord::RecordNotUnique (PG::Error: ERROR: duplicate key value violates unique constraint "companies_pkey" DETAIL: Key (id)=(151) already exists. 而下一次我运行的动作,它会简单地分配ID 152,这将正常工作,如果该值尚未采取。 我怎样才能得到轨道检查一个ID是否已经存在,然后分配它? 谢谢! 编辑 卡车id是什么被复制。 用户已经存在,在这种情况下是一个常数。 这实际上是一个遗留问题,我不得不处理。 一种select是重新创build表让let rails自动分配每个id。 我开始认为这可能是最好的select,因为我还有其他一些问题,但是这样做的迁移将非常复杂,因为卡车在许多其他表格中是外键。 有没有一种简单的方法来使用轨道创build一个新的表,其中已经存储在卡车下的相同的数据,自动分配的ID和维护所有现有的关系?

在你的应用程序中执行sql计算的优缺点是什么?

shopkeeper表有以下领域: id (bigint),amount (numeric(19,2)),createddate (timestamp) 比方说,我有上表。 我想获取昨天的logging,并通过将金额印在美分生成报告。 一种做法是在我的Java应用程序中执行计算并执行一个简单的查询 Date previousDate ;// $1 calculate in application Date todayDate;// $2 calculate in application select amount where createddate between $1 and $2 然后循环遍历logging,并在我的Java应用程序中将金额转换为分,并生成报告 另一种方式就像在SQL查询本身执行计算: select cast(amount * 100 as int) as "Cents" from shopkeeper where createddate between date_trunc('day', now()) – interval '1 day' and date_trunc('day', now()) 然后遍历logging并生成报告 从某种意义上说,我的所有处理都是在java应用程序中完成的,并且简单的查询被触发。 […]