Questions tagged «sql»

结构化查询语言(SQL)是用于查询数据库的语言。问题应包括代码示例,表结构,示例数据以及正在使用的DBMS实现的标签(例如MySQL,PostgreSQL,Oracle,MS SQL Server,IBM DB2等)。如果您的问题仅涉及特定的DBMS(使用特定的扩展名/功能),请改用该DBMS的标签。使用SQL标记的问题的答案应使用ISO / IEC标准SQL。

11
SQLite:CURRENT_TIMESTAMP以格林尼治标准时间表示,而不是计算机的时区
我有一个带有此列定义的sqlite(v3)表: "timestamp" DATETIME DEFAULT CURRENT_TIMESTAMP 该数据库所在的服务器位于CST时区。当我在不包括timestamp列的情况下插入表时,sqlite会自动以GMT(而不是CST)中的当前时间戳填充该字段。 有没有办法修改我的插入语句,以强制存储的时间戳记在CST中?另一方面,最好将其存储在GMT中(例如,以防数据库移动到其他时区),所以有一种方法可以修改我选择的SQL,以便在我将存储的时间戳转换为CST时从表中提取出来?



2
何时使用SELECT…FOR UPDATE?
请帮助我了解后面的用例SELECT ... FOR UPDATE。 问题1:以下是何时SELECT ... FOR UPDATE应使用的一个很好的例子吗? 鉴于: 房间[id] 标签[ID,名称] room_tags [room_id,tag_id] room_id和tag_id是外键 该应用程序要列出所有房间及其标签,但是需要区分没有标签的房间和已删除的房间。如果不使用SELECT ... FOR UPDATE,则可能发生以下情况: 原来: 房间包含 [id = 1] 标签包含 [id = 1, name = 'cats'] room_tags包含 [room_id = 1, tag_id = 1] 线程1: SELECT id FROM rooms; returns [id = 1] 线程2: DELETE FROM room_tags …

14
如何从sqlite查询中获取字典?
db = sqlite.connect("test.sqlite") res = db.execute("select * from table") 通过迭代,我得到了对应于行的列表。 for row in res: print row 我可以得到列的名称 col_name_list = [tuple[0] for tuple in res.description] 但是是否有一些功能或设置可以获取字典而不是列表? {'col1': 'value', 'col2': 'value'} 还是我必须自己做?

3
查询JSON类型内的数组元素
我正在尝试测试jsonPostgreSQL 9.3中的类型。 我在json名为data的表中有一个列reports。JSON看起来像这样: { "objects": [ {"src":"foo.png"}, {"src":"bar.png"} ], "background":"background.png" } 我想查询表中所有与“对象”数组中“ src”值匹配的报告。例如,是否可以在数据库中查询所有匹配的报告'src' = 'foo.png'?我成功地写了一个查询,可以匹配"background": SELECT data AS data FROM reports where data->>'background' = 'background.png' 但是由于"objects"具有一组值,所以我似乎无法编写出有效的东西。是否可以在数据库中查询所有匹配的报告'src' = 'foo.png'?我已经查看了这些来源,但仍然无法了解: http://www.postgresql.org/docs/9.3/static/functions-json.html 如何使用新的PostgreSQL JSON数据类型内的字段进行查询? http://michael.otacoo.com/postgresql-2/postgres-9-3-feature-highlight-json-operators/ 我也尝试过类似的方法,但无济于事: SELECT json_array_elements(data->'objects') AS data from reports WHERE data->>'src' = 'foo.png'; 我不是SQL专家,所以我不知道我做错了什么。
118 sql  json  postgresql  jsonb  lateral 



6
为什么在LIKE过滤器中使用下划线字符会给我所有结果?
我用LIKE条件写了下面的SQL查询: SELECT * FROM Manager WHERE managerid LIKE '_%' AND managername LIKE '%_%' 在中,LIKE我想搜索任何下划线%_%,但是我知道我列的数据没有下划线字符。 为什么查询会向我提供表中的所有记录? 样本数据: create table Manager( id int ,managerid varchar(3) ,managername varchar(50) ); insert into Manager(id,managerid,managername)values(1,'A1','Mangesh'); insert into Manager(id,managerid,managername)values(2,'A2','Sagar'); insert into Manager(id,managerid,managername)values(3,'C3','Ahmad'); insert into Manager(id,managerid,managername)values(4,'A4','Mango'); insert into Manager(id,managerid,managername)values(5,'B5','Sandesh'); Sql-Fiddle
118 sql  sql-server 

13
在目录中运行所有SQL文件
我必须运行多个.sql文件,以应用其他开发人员在SQL Server 2005数据库上所做的更改。这些文件是根据以下模式命名的: 0001 - abc.sql 0002 - abcef.sql 0003 - abc.sql ... 有没有办法一次性运行所有这些程序?

10
如何在LIMIT子句中应用bindValue方法?
这是我的代码的快照: $fetchPictures = $PDO->prepare("SELECT * FROM pictures WHERE album = :albumId ORDER BY id ASC LIMIT :skip, :max"); $fetchPictures->bindValue(':albumId', $_GET['albumid'], PDO::PARAM_INT); if(isset($_GET['skip'])) { $fetchPictures->bindValue(':skip', trim($_GET['skip']), PDO::PARAM_INT); } else { $fetchPictures->bindValue(':skip', 0, PDO::PARAM_INT); } $fetchPictures->bindValue(':max', $max, PDO::PARAM_INT); $fetchPictures->execute() or die(print_r($fetchPictures->errorInfo())); $pictures = $fetchPictures->fetchAll(PDO::FETCH_ASSOC); 我懂了 您的SQL语法有误;检查与您的MySQL服务器版本相对应的手册,以在第1行的“ 15”,“ 15”附近使用正确的语法 似乎PDO会将单引号添加到SQL代码的LIMIT部分的变量中。我查了一下,发现这个与我相关的错误:http : //bugs.php.net/bug.php?id=44639 那是我在看的吗?自2008年4月以来,此错误已被打开!同时,我们应该做什么? …
117 php  mysql  sql  pdo  bindvalue 

4
如何在SQL Server Management Studio中快速编辑表中的值?
除了上下文菜单->对象浏览器中的“编辑前200行”之外,还有一种快速方法可以在“编辑”模式下打开表格,在此我可以快速修改单元格的值? 我需要能够翻阅前200行。而且我不想为每一次需要做的细微调整编写“插入”脚本...我不明白为什么SMS不能提供对分页表编辑器(例如Navicat)的快速访问。
117 sql  sql-server  ssms 




By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.